From 14bba8f264b762401906bd877b48967797d1dcfe Mon Sep 17 00:00:00 2001 From: Abhay Date: Mon, 20 Apr 2026 22:31:06 +0530 Subject: [PATCH] fix: move Windows-only test cases to cfg-gated test function --- src/db/stream.rs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/db/stream.rs b/src/db/stream.rs index ac76b44..87cde06 100644 --- a/src/db/stream.rs +++ b/src/db/stream.rs @@ -205,13 +205,22 @@ mod tests { #[case(&["foo", "o", "bar"], "/foo/bar", false)] #[case(&["/foo/", "/bar"], "/foo/bar", false)] #[case(&["/foo/", "/bar"], "/foo/baz/bar", true)] - // Forward slash matching on Windows-style paths - #[case(&["bar/meow"], r"~\foo\bar\meow", true)] - #[case(&["bar", "meow"], r"~\foo\bar\meow", true)] fn query(#[case] keywords: &[&str], #[case] path: &str, #[case] is_match: bool) { let db = &mut Database::new(PathBuf::new(), Vec::new(), |_| Vec::new(), false); let options = StreamOptions::new(0).with_keywords(keywords.iter()); let stream = Stream::new(db, options); assert_eq!(is_match, stream.filter_by_keywords(path)); } + + // Forward slash matching on Windows-style paths + #[cfg(windows)] + #[rstest] + #[case(&["bar/meow"], r"~\foo\bar\meow", true)] + #[case(&["bar", "meow"], r"~\foo\bar\meow", true)] + fn query_windows(#[case] keywords: &[&str], #[case] path: &str, #[case] is_match: bool) { + let db = &mut Database::new(PathBuf::new(), Vec::new(), |_| Vec::new(), false); + let options = StreamOptions::new(0).with_keywords(keywords.iter()); + let stream = Stream::new(db, options); + assert_eq!(is_match, stream.filter_by_keywords(path)); + } }