Sha256: 6299c1af354f1c19770909665991d91c65068530d82499271e8e809657649c9e

Contents?: true

Size: 1.14 KB

Versions: 9

Compression:

Stored size: 1.14 KB

Contents

# frozen_string_literal: true
module Cucumber
  module Formatter
    module LegacyApi

      class Results
        def initialize
          # Optimization - quicker lookup.
          @inserted_steps = {}
          @inserted_scenarios = {}
        end

        def step_visited(step) #:nodoc:
          step_id = step.object_id

          return if @inserted_steps.key?(step_id)
          @inserted_steps[step_id] = step
          steps.push(step)
        end

        def scenario_visited(scenario) #:nodoc:
          scenario_id = scenario.object_id

          return if @inserted_scenarios.key?(scenario_id)
          @inserted_scenarios[scenario_id] = scenario
          scenarios.push(scenario)
        end

        def steps(status = nil) #:nodoc:
          @steps ||= []
          if(status)
            @steps.select{|step| step.status == status}
          else
            @steps
          end
        end

        def scenarios(status = nil) #:nodoc:
          @scenarios ||= []
          if(status)
            @scenarios.select{|scenario| scenario.status == status}
          else
            @scenarios
          end
        end
      end

    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
cucumber-3.2.0 lib/cucumber/formatter/legacy_api/results.rb
honeybadger-4.5.3 vendor/bundle/ruby/2.6.0/gems/cucumber-3.1.2/lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.1.2 lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.1.1 lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.1.0 lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.0.2 lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.0.1 lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.0.0 lib/cucumber/formatter/legacy_api/results.rb
cucumber-3.0.0.pre.2 lib/cucumber/formatter/legacy_api/results.rb