summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMartin Haug <mhaug@live.de>2021-06-29 12:33:24 +0200
committerMartin Haug <mhaug@live.de>2021-06-29 12:33:24 +0200
commit21d919e2d2a38802ba96003597eadb68342d71ef (patch)
tree9ec3dd8f08aa29456063ba478520254990578faa /tests
parent8ea05739afdbe84fc50fe97d780cc6096d8df03d (diff)
Put incremental compilation behind feature
Diffstat (limited to 'tests')
-rw-r--r--tests/typeset.rs67
1 files changed, 35 insertions, 32 deletions
diff --git a/tests/typeset.rs b/tests/typeset.rs
index 31da3ce0..36439f52 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();