Sha256: 22f28d65b4d8cbf35dfcc8cf7c7546ff0dedfdbf376bb7f285f359ed6c316f89
Contents?: true
Size: 1.49 KB
Versions: 2
Compression:
Stored size: 1.49 KB
Contents
module KnapsackPro module Adapters class CucumberAdapter < BaseAdapter TEST_DIR_PATTERN = 'features/**{,/*/**}/*.feature' def self.test_path(object) if Cucumber::VERSION.to_i >= 2 test_case = object test_case.location.file else if object.respond_to?(:scenario_outline) if object.scenario_outline.respond_to?(:feature) # Cucumber < 1.3 object.scenario_outline.feature.file else # Cucumber >= 1.3 object.scenario_outline.file end else if object.respond_to?(:feature) # Cucumber < 1.3 object.feature.file else # Cucumber >= 1.3 object.file end end end end def bind_time_tracker Around do |object, block| KnapsackPro.tracker.current_test_path = KnapsackPro::Adapters::CucumberAdapter.test_path(object) KnapsackPro.tracker.start_timer block.call KnapsackPro.tracker.stop_timer end ::Kernel.at_exit do KnapsackPro.logger.info(KnapsackPro::Presenter.global_time) end end def bind_save_report ::Kernel.at_exit do KnapsackPro::Report.save end end private def Around(*tag_expressions, &proc) ::Cucumber::RbSupport::RbDsl.register_rb_hook('around', tag_expressions, proc) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
knapsack_pro-0.7.1 | lib/knapsack_pro/adapters/cucumber_adapter.rb |
knapsack_pro-0.7.0 | lib/knapsack_pro/adapters/cucumber_adapter.rb |