Sha256: c54cff1efafeb47f5a2f005d2eb6ff87886d18eeb762d8fba263cdfbf0740a23
Contents?: true
Size: 813 Bytes
Versions: 6
Compression:
Stored size: 813 Bytes
Contents
require 'cucumber/core/filter' module Cucumber module Filters class ActivateSteps < Core::Filter.new(:step_definitions) def test_case(test_case) CaseFilter.new(test_case, step_definitions).test_case.describe_to receiver end class CaseFilter def initialize(test_case, step_definitions) @original_test_case = test_case @step_definitions = step_definitions end def test_case @original_test_case.with_steps(new_test_steps) end private def new_test_steps @original_test_case.test_steps.map(&self.method(:attempt_to_activate)) end def attempt_to_activate(test_step) @step_definitions.find_match(test_step).activate(test_step) end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems