aboutsummaryrefslogtreecommitdiff
path: root/crates/fparkan-material/src
diff options
context:
space:
mode:
Diffstat (limited to 'crates/fparkan-material/src')
-rw-r--r--crates/fparkan-material/src/lib.rs25
1 files changed, 16 insertions, 9 deletions
diff --git a/crates/fparkan-material/src/lib.rs b/crates/fparkan-material/src/lib.rs
index 2a05f87..32d48a1 100644
--- a/crates/fparkan-material/src/lib.rs
+++ b/crates/fparkan-material/src/lib.rs
@@ -1129,9 +1129,7 @@ mod tests {
("IS", 905_usize, 439_usize, 95_usize),
("IS2", 1127_usize, 515_usize, 95_usize),
] {
- let Some(root) = corpus_root(corpus) else {
- continue;
- };
+ let root = corpus_root(corpus);
let mut mat0_count = 0usize;
let mut archive_wear_count = 0usize;
let mut standalone_wear_count = 0usize;
@@ -1185,12 +1183,21 @@ mod tests {
}
}
- fn corpus_root(name: &str) -> Option<PathBuf> {
- let root = Path::new(env!("CARGO_MANIFEST_DIR"))
- .join("../..")
- .join("testdata")
- .join(name);
- root.is_dir().then_some(root)
+ fn corpus_root(name: &str) -> PathBuf {
+ let variable = match name {
+ "IS" => "FPARKAN_CORPUS_PART1_ROOT",
+ "IS2" => "FPARKAN_CORPUS_PART2_ROOT",
+ _ => panic!("unknown licensed corpus part: {name}"),
+ };
+ let root = std::env::var_os(variable)
+ .map(PathBuf::from)
+ .unwrap_or_else(|| panic!("{variable} is required for licensed corpus tests"));
+ assert!(
+ root.is_dir(),
+ "licensed corpus root is missing: {}",
+ root.display()
+ );
+ root
}
fn files_under(root: &Path) -> Vec<PathBuf> {