aboutsummaryrefslogtreecommitdiff
path: root/crates/fparkan-prototype
diff options
context:
space:
mode:
Diffstat (limited to 'crates/fparkan-prototype')
-rw-r--r--crates/fparkan-prototype/src/lib.rs31
1 files changed, 21 insertions, 10 deletions
diff --git a/crates/fparkan-prototype/src/lib.rs b/crates/fparkan-prototype/src/lib.rs
index 35089b0..32e736b 100644
--- a/crates/fparkan-prototype/src/lib.rs
+++ b/crates/fparkan-prototype/src/lib.rs
@@ -1768,8 +1768,9 @@ mod tests {
}
#[test]
+ #[ignore = "requires licensed corpus"]
fn resolves_known_part1_registry_cases() {
- let root = corpus_root("IS").expect("part 1 root");
+ let root = corpus_root("IS");
let vfs = Arc::new(DirectoryVfs::new(&root));
let repo = CachedResourceRepository::new(vfs.clone());
let cases = [
@@ -1799,9 +1800,10 @@ mod tests {
}
#[test]
+ #[ignore = "requires licensed corpus"]
fn resolves_some_registry_entries_in_both_corpora() {
for corpus in ["IS", "IS2"] {
- let root = corpus_root(corpus).expect("corpus root");
+ let root = corpus_root(corpus);
let objects = std::fs::read(root.join("objects.rlb")).expect("objects.rlb");
let document = fparkan_nres::decode(
Arc::from(objects.into_boxed_slice()),
@@ -1830,7 +1832,7 @@ mod tests {
fn licensed_corpora_unit_dat_parse_counts() {
let cases = [("IS", 425, 5_219), ("IS2", 676, 8_145)];
for (corpus, expected_files, expected_records) in cases {
- let root = corpus_root(corpus).expect("corpus root");
+ let root = corpus_root(corpus);
let mut dat_paths = Vec::new();
collect_unit_dat_files(&root, &mut dat_paths);
dat_paths.sort();
@@ -1863,7 +1865,7 @@ mod tests {
#[ignore = "requires licensed corpus"]
fn licensed_corpora_registry_payloads_are_record_aligned() {
for corpus in ["IS", "IS2"] {
- let root = corpus_root(corpus).expect("corpus root");
+ let root = corpus_root(corpus);
let objects = std::fs::read(root.join("objects.rlb")).expect("objects.rlb");
let document = fparkan_nres::decode(
Arc::from(objects.into_boxed_slice()),
@@ -1909,12 +1911,21 @@ mod tests {
}
}
- fn corpus_root(name: &str) -> Option<std::path::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) -> std::path::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(std::path::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 generated_acyclic_graph(