#[deny(missing_docs)] /// Parse a scenario snippet into logical lines. /// /// Each logical line forms a scenario step. It may be divided into /// multiple physical lines. pub fn parse_scenario_snippet(snippet: &str) -> impl Iterator { snippet.lines() } #[cfg(test)] mod test { use super::parse_scenario_snippet; fn parse_lines(snippet: &str) -> Vec<&str> { parse_scenario_snippet(snippet).collect() } #[test] fn parses_empty_snippet_into_no_lines() { assert_eq!(parse_lines("").len(), 0); } #[test] fn parses_single_line() { assert_eq!(parse_lines("given I am Tomjon"), vec!["given I am Tomjon"]) } #[test] fn parses_two_lines() { assert_eq!( parse_lines("given I am Tomjon\nwhen I declare myself king"), vec!["given I am Tomjon", "when I declare myself king"] ) } }