44 lines
1.1 KiB
Rust
44 lines
1.1 KiB
Rust
#![cfg(all(feature = "glob", feature = "json"))]
|
|
|
|
mod glob_submodule;
|
|
|
|
#[test]
|
|
fn test_basic_globbing() {
|
|
insta::glob!("inputs/*.txt", |path| {
|
|
let contents = std::fs::read_to_string(path).unwrap();
|
|
insta::assert_json_snapshot!(&contents);
|
|
});
|
|
}
|
|
|
|
#[test]
|
|
fn test_basic_globbing_nested() {
|
|
insta::glob!("inputs-nested/*/*.txt", |path| {
|
|
let contents = std::fs::read_to_string(path).unwrap();
|
|
insta::assert_snapshot!(&contents);
|
|
});
|
|
}
|
|
|
|
#[test]
|
|
fn test_globs_follow_links() {
|
|
insta::glob!("link-to-inputs/*.txt", |path| {
|
|
let contents = std::fs::read_to_string(path).unwrap();
|
|
insta::assert_json_snapshot!(&contents);
|
|
});
|
|
}
|
|
|
|
#[test]
|
|
#[should_panic(expected = "the glob! macro did not match any files.")]
|
|
fn test_empty_glob_fails() {
|
|
insta::glob!("nonexistent", |_| {
|
|
// nothing
|
|
});
|
|
}
|
|
|
|
#[test]
|
|
#[should_panic(expected = "Parent directory traversal is not supported in glob patterns")]
|
|
fn test_parent_dir_glob_fails_with_helpful_message() {
|
|
insta::glob!("../**/*.rs", |_| {
|
|
// This should fail with a helpful error message about parent directory traversal
|
|
});
|
|
}
|