module RSpeed::Observer

Public Instance Methods

after(example) click to toggle source
# File lib/rspeed/observer.rb, line 7
def after(example)
  file_path   = example.metadata[:file_path]
  line_number = example.metadata[:line_number]
  spent_time  = example.clock.now - example.metadata[:start_at]

  json = { file: "#{file_path}:#{line_number}", time: spent_time }.to_json

  RSpeed::Redis.client.rpush(RSpeed::Variable.profile, json)
end
after_suite() click to toggle source
# File lib/rspeed/observer.rb, line 17
def after_suite
  RSpeed::Redis.set(RSpeed::Variable.pipe, true)

  return unless RSpeed::Redis.specs_finished?

  RSpeed::Redis.version_the_result if RSpeed::Redis.result?
  RSpeed::Splitter.consolidate
  RSpeed::Reporter.call
  RSpeed::Redis.clean

  RSpeed::Logger.log(self, __method__, 'RSpeed finished.')
end
before(example) click to toggle source
# File lib/rspeed/observer.rb, line 30
def before(example)
  example.update_inherited_metadata(start_at: example.clock.now)
end
before_suite() click to toggle source
# File lib/rspeed/observer.rb, line 34
def before_suite
  RSpeed::Logger.log(self, __method__, 'Cleanning current flag and profile.')

  RSpeed::Redis.destroy(pattern: RSpeed::Variable.pipe)
  RSpeed::Redis.destroy(pattern: RSpeed::Variable.profile)
end