diff options
| author | Laurenz <laurmaedje@gmail.com> | 2021-06-30 00:43:53 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-06-30 00:43:53 +0200 |
| commit | d5d2b80699a002594f429e30f5f1ca0ca58d3412 (patch) | |
| tree | 15e0f0565d4aa7c8230cb76b057b99761788c86c /tests/typeset.rs | |
| parent | 2f44d10aa4209b226cfc3d0f8f2c8516005edf6a (diff) | |
| parent | ff0e3442ef68a23dba273122f3ba0a54a34c45bf (diff) | |
Merge pull request #34 from typst/cfg-conditional
Put incremental compilation behind feature
Diffstat (limited to 'tests/typeset.rs')
| -rw-r--r-- | tests/typeset.rs | 67 |
1 files changed, 35 insertions, 32 deletions
diff --git a/tests/typeset.rs b/tests/typeset.rs index 1540164f..f95c066d 100644 --- a/tests/typeset.rs +++ b/tests/typeset.rs @@ -272,45 +272,48 @@ fn test_part( } } - let reference_cache = cache.layout.clone(); - for level in 0 .. reference_cache.levels() { - cache.layout = reference_cache.clone(); - cache.layout.retain(|x| x == level); - if cache.layout.frames.is_empty() { - continue; - } + #[cfg(feature = "layout-cache")] + { + let reference_cache = cache.layout.clone(); + for level in 0 .. reference_cache.levels() { + cache.layout = reference_cache.clone(); + cache.layout.retain(|x| x == level); + if cache.layout.frames.is_empty() { + continue; + } - cache.layout.turnaround(); + cache.layout.turnaround(); - let cached_result = layout(loader, cache, &executed.output); + let cached_result = layout(loader, cache, &executed.output); - let misses = cache - .layout - .frames - .iter() - .flat_map(|(_, e)| e) - .filter(|e| e.level == level && !e.hit() && e.age() == 2) - .count(); + let misses = cache + .layout + .frames + .iter() + .flat_map(|(_, e)| e) + .filter(|e| e.level == level && !e.hit() && e.age() == 2) + .count(); - if misses > 0 { - ok = false; - println!( - " Recompilation had {} cache misses on level {} (Subtest {}) ❌", - misses, level, i - ); - } + if misses > 0 { + ok = false; + println!( + " Recompilation had {} cache misses on level {} (Subtest {}) ❌", + misses, level, i + ); + } - if cached_result != layouted { - ok = false; - println!( - " Recompilation of subtest {} differs from clean pass ❌", - i - ); + if cached_result != layouted { + ok = false; + println!( + " Recompilation of subtest {} differs from clean pass ❌", + i + ); + } } - } - cache.layout = reference_cache; - cache.layout.turnaround(); + cache.layout = reference_cache; + cache.layout.turnaround(); + } if !compare_ref { layouted.clear(); |
