#[cfg(test)]
mod tests {
use crate::prelude::*;
use test_log::test;
#[test]
fn test_intro() {
assert_eq!(Some(" Hello").ws(), Some("Hello"));
assert_eq!(Some("\nHello").ws(), Some("Hello"));
assert_eq!(None.ws(), None);
assert_eq!(Some(" Hello").hws(), Some("Hello"));
assert_eq!(Some("\nHello").hws(), Some("\nHello"));
assert_eq!(None.hws(), None);
assert_eq!(Some("Hello").end_of_stream(), None);
assert_eq!(Some("").end_of_stream(), Some(""));
assert_eq!(None.end_of_stream(), None);
assert_eq!(Some("Hello").end_of_line(), None);
assert_eq!(Some("\nHello").end_of_line(), Some("Hello"));
assert_eq!(Some("\n\nHello").end_of_line(), Some("\nHello"));
assert_eq!(Some("\r\nHello").end_of_line(), Some("Hello"));
assert_eq!(Some("").end_of_line(), Some(""));
assert_eq!(None.end_of_line(), None);
let chars: Vec<_> = "Hle".chars().collect();
assert_eq!(Some("Hello").chars_in(1.., chars.as_slice()), Some("o"));
assert_eq!(Some("Hello").chars_in(1.., &['H', 'l', 'e']), Some("o"));
assert_eq!(
Some("Hello").chars_match(1.., |c| c.is_uppercase()),
Some("ello")
);
assert_eq!(Some("Hello").chars_in(1.., &['H', 'e']), Some("llo"));
assert_eq!(Some("Hello").text("He"), Some("llo"));
assert_eq!(Some("Hello").text("He"), Some("llo"));
assert_eq!(Some("Hello").text("Bye"), None);
assert_eq!(Some("Hello").text_alt(&[""]), Some("Hello"));
assert_eq!(Some("Hello").text_alt(&["Bye", "He"]), Some("llo"));
assert_eq!(Some("Hello").text_alt(&["He", "Hello"]), Some("llo"));
assert_eq!(Some("Hello").text_alt(&["Hello", "He"]), Some(""));
assert_eq!(Some("Hello").text_alt(&["Bye1", "Bye2"]), None);
assert_eq!(Some("Hello").find("llo"), Some("llo"));
assert_eq!(Some("Hello").find("Bye"), None);
assert_eq!(Some("Hello").find(""), Some("Hello"));
assert_eq!(Some("Hello").find("eH"), None);
assert_eq!(Some("Hello").scan_text("llo"), Some(""));
assert_eq!(Some("Hello").scan_text("Bye"), None);
assert_eq!(Some("Hello").scan_text(""), Some("Hello"));
assert_eq!(Some("Hello").scan_text("eH"), None);
assert_eq!(Some("Hello").scan_text("Hel"), Some("lo"));
assert_eq!(Some("Hello\nWorld").scan_eol(), Some("World"));
assert_eq!(Some("Hello").scan_eol(), Some(""));
assert_eq!(Some("Hello\n\n").scan_eol(), Some("\n"));
assert_eq!(Some("Hello\r\nWorld").scan_eol(), Some("World"));
}
}