def print_snippets(options)
return unless options[:snippets]
undefined = step_mother.steps(:undefined)
return if undefined.empty?
unknown_programming_language = step_mother.unknown_programming_language?
snippets = undefined.map do |step|
step_name = Undefined === step.exception ? step.exception.step_name : step.name
step_multiline_class = step.multiline_arg ? step.multiline_arg.class : nil
snippet = @step_mother.snippet_text(step.actual_keyword, step_name, step_multiline_class)
snippet
end.compact.uniq
text = "\nYou can implement step definitions for undefined steps with these snippets:\n\n"
text += snippets.join("\n\n")
@io.puts format_string(text, :undefined)
if unknown_programming_language
@io.puts format_string("\nIf you want snippets in a different programming language, just make sure a file\n" +
"with the appropriate file extension exists where cucumber looks for step definitions.", :failed)
end
@io.puts
@io.flush
end