Sha256: ca3ace969be1b6ab089dab37ed38e29008c71c3c8de44fffeb46bc817b39f967

Contents?: true

Size: 1.09 KB

Versions: 2

Compression:

Stored size: 1.09 KB

Contents

# require File.dirname(__FILE__) + '/../../lib/cucover'
require 'spec'
require 'test/unit/assertions'

module CucoverHelper  
  def edit(file)
    original_mtime = File.mtime(file) 
    FileUtils.touch(file)
    @edited_files ||= {}
    @edited_files[file] = original_mtime
  end
  
  def restore_file_mtimes
    return unless @edited_files
    @edited_files.each do |file, original_mtime|
      `touch -t #{original_mtime.strftime('%Y%m%d%H%M.%S')} #{examples_dir}/#{file}`
    end
  end
  
  def strip_duration(s)
    s.gsub(/^\d+m\d+\.\d+s\n/m, "")
  end
  
  def clear_cache!
    `find examples -name cucover.data | xargs rm -rf`
  end
  
  def example_app
    @example_app || raise("Please call the step 'Given I am using the .... example app' so I know which example app to run these features in.")
  end

  def within_examples_dir
    Dir.chdir(examples_dir) do
      yield
    end
  end
  
  def examples_dir
    File.expand_path(File.dirname(__FILE__) + "/../../examples/self_test/#{example_app}")    
  end
end

World CucoverHelper, Test::Unit::Assertions

After do
  clear_cache!
  restore_file_mtimes
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mattwynne-cucover-0.1.0 features/support/env.rb
mattwynne-cucover-0.1.1 features/support/env.rb