Class: Testcube::Adapters::RSpecAdapter

Inherits:
BaseAdapter show all
Defined in:
lib/testcube/adapters/rspec_adapter.rb

Instance Attribute Summary

Attributes inherited from BaseAdapter

#api_key

Instance Method Summary collapse

Methods inherited from BaseAdapter

bind, #bind

Instance Method Details

#bind_save_reportObject



28
29
30
31
32
33
34
35
# File 'lib/testcube/adapters/rspec_adapter.rb', line 28

def bind_save_report
  adapter = self
  ::RSpec.configure do |config|
    config.after(:suite) do
      Testcube::Report.save(adapter.api_key)
    end
  end
end

#bind_time_trackerObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/testcube/adapters/rspec_adapter.rb', line 7

def bind_time_tracker
  # TODO: we need to filter testcube from rspec backtraces
  ::RSpec.configure do |config|
    config.around(:each) do |example|
      Testcube.tracker.current_test_path = example.[:file_path]
      Testcube.tracker.current_line_number = example.[:line_number]
      Testcube.tracker.start_timer

      example.run

      Testcube.tracker.current_exception = example.exception
      Testcube.tracker.stop_timer
    end

    config.after(:suite) do
      Testcube.logger.debug("Total time: #{Testcube.tracker.total_time.round(2)}s")
      Testcube.logger.debug("Saw #{Testcube.tracker.num_specs} specs")
    end
  end
end