From ba37e08a5d592e50bbdde4de44c51c3ed7b3c3bf Mon Sep 17 00:00:00 2001 From: Manuel Thalmann <m@nuth.ch> Date: Fri, 21 Mar 2025 07:41:16 +0100 Subject: [PATCH] Add a function for searching case insensitively --- minigrep/src/lib.rs | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/minigrep/src/lib.rs b/minigrep/src/lib.rs index 8136754..b5368ee 100644 --- a/minigrep/src/lib.rs +++ b/minigrep/src/lib.rs @@ -40,18 +40,38 @@ pub fn search<'a>(query: &str, contents: &'a str) -> Vec<&'a str> { results } +pub fn search_case_insensitive<'a>(query: &str, contents: &'a str) -> Vec<&'a str> { + vec![] +} + #[cfg(test)] mod tests { use super::*; #[test] - fn one_result() { + fn case_sensitive() { let query = "duct"; let contents = "\ Rust: safe, fast, productive. -Pick three."; +Pick three. +Duct tape."; assert_eq!(vec!["safe, fast, productive."], search(query, contents)); } + + #[test] + fn case_insensitive() { + let query = "rUsT"; + let contents = "\ +Rust: +safe, fast, productive. +Pick three. +Trust me."; + + assert_eq!( + vec!["Rust:", "Trust me."], + search_case_insensitive(query, contents) + ); + } }