aboutsummaryrefslogtreecommitdiff
path: root/crates/fparkan-terrain/src
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2026-06-22 16:29:33 +0300
committerValentin Popov <valentin@popov.link>2026-06-22 16:29:33 +0300
commit162de8ccabdd3ccf55e1da28532cad6e8345093d (patch)
treed7f33966ddb1dd4fe9e82caea62bc99aeb269535 /crates/fparkan-terrain/src
parent0b23cf48e7aba160b2786d8359e8cfb4ca13da07 (diff)
downloadfparkan-162de8ccabdd3ccf55e1da28532cad6e8345093d.tar.xz
fparkan-162de8ccabdd3ccf55e1da28532cad6e8345093d.zip
fix: require manifests for licensed gates
Diffstat (limited to 'crates/fparkan-terrain/src')
-rw-r--r--crates/fparkan-terrain/src/lib.rs29
1 files changed, 17 insertions, 12 deletions
diff --git a/crates/fparkan-terrain/src/lib.rs b/crates/fparkan-terrain/src/lib.rs
index 92f36dd..ff91219 100644
--- a/crates/fparkan-terrain/src/lib.rs
+++ b/crates/fparkan-terrain/src/lib.rs
@@ -800,9 +800,7 @@ mod tests {
("IS", 33_usize, 34_662_usize),
("IS2", 32_usize, 18_984_usize),
] {
- let Some(root) = corpus_root(corpus) else {
- continue;
- };
+ let root = corpus_root(corpus);
let mut files = 0usize;
let mut areals = 0usize;
let mut located_centers = 0usize;
@@ -856,9 +854,7 @@ mod tests {
("IS", 33_usize, 275_882_usize),
("IS2", 32_usize, 184_454_usize),
] {
- let Some(root) = corpus_root(corpus) else {
- continue;
- };
+ let root = corpus_root(corpus);
let mut files = 0usize;
let mut faces = 0usize;
for path in files_under(&root) {
@@ -1051,12 +1047,21 @@ mod tests {
vertices.first().copied()
}
- 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> {