class Cucumber::Filters::ActivateSteps::CaseFilter::FindMatch

def initialize(step_match_search, configuration, test_step)

def initialize(step_match_search, configuration, test_step)
  @step_match_search = step_match_search
  @configuration = configuration
  @test_step = test_step
end

def match

def match
  matches.first
end

def matches

def matches
  step_match_search.call(test_step.text)
end

def result

def result
  begin
    return NoStepMatch.new(test_step, test_step.text) unless matches.any?
  rescue Cucumber::Ambiguous => e
    return AmbiguousStepMatch.new(e)
  end
  configuration.notify :step_activated, test_step, match
  return SkippingStepMatch.new if configuration.dry_run?
  match
end