global

def select_step_container(source)

def select_step_container(source)
  if source.background
    if same_background_as_previous_test_case?(source)
      HiddenBackgroundPrinter.new(formatter, source.background)
    else
      BackgroundPrinter.new(formatter, node, source.background, before_hook_results)
    end
  elsif source.scenario
    ScenarioPrinter.new(formatter, source.scenario, before_hook_results)
  elsif source.scenario_outline
    if same_scenario_outline_as_previous_test_case?(source) && @previous_outline_child
      @previous_outline_child
    else
      ScenarioOutlinePrinter.new(formatter, config, source.scenario_outline)
    end
  else
    raise 'unknown step container'
  end
end