diff --git a/src/main.rs b/src/main.rs index f357562..1c67f06 100644 --- a/src/main.rs +++ b/src/main.rs @@ -23,24 +23,26 @@ fn main() -> Result<()> { content.as_str(), args.pattern.as_str(), &mut std::io::stdout(), - ); + )?; Ok(()) } -fn find_matches(content: &str, pattern: &str, mut writer: impl std::io::Write) { +fn find_matches(content: &str, pattern: &str, mut writer: impl std::io::Write) -> Result<()> { for line in content.lines() { if line.contains(pattern) { - writeln!(writer, "{}", line); + writeln!(writer, "{}", line)?; } } + Ok(()) } #[test] -fn find_a_match() { +fn find_a_match() -> Result<(), Box> { let mut result = Vec::new(); - find_matches("lorem ipsum\ndolar sit amet", "lorem", &mut result); - assert_eq!(result, b"lorem ipsum\n") + find_matches("lorem ipsum\ndolar sit amet", "lorem", &mut result)?; + assert_eq!(result, b"lorem ipsum\n"); + Ok(()) } #[allow(dead_code)]