Class: ParallelCucumber::RuntimeLogger

Inherits:
Object
  • Object
show all
Defined in:
lib/parallel_cucumber/runtime_logger.rb

Instance Method Summary collapse

Constructor Details

#initialize(step_mother, path_or_io, options = nil) ⇒ RuntimeLogger

Returns a new instance of RuntimeLogger.



4
5
6
7
# File 'lib/parallel_cucumber/runtime_logger.rb', line 4

def initialize(step_mother, path_or_io, options=nil)
  @io = prepare_io(path_or_io)
  @example_times = Hash.new(0)
end

Instance Method Details

#after_feature(feature) ⇒ Object



13
14
15
# File 'lib/parallel_cucumber/runtime_logger.rb', line 13

def after_feature(feature)
  @example_times[feature.file] += Time.now.to_f - @start_at
end

#after_features(*args) ⇒ Object



17
18
19
20
21
# File 'lib/parallel_cucumber/runtime_logger.rb', line 17

def after_features(*args)
  lock_output do
    @io.puts @example_times.map { |file, time| "#{file}:#{time}" }
  end
end

#before_feature(_) ⇒ Object



9
10
11
# File 'lib/parallel_cucumber/runtime_logger.rb', line 9

def before_feature(_)
  @start_at = Time.now.to_f
end