diff options
Diffstat (limited to 'src/specification.rs')
-rw-r--r-- | src/specification.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/specification.rs b/src/specification.rs index 2932f41..4eeb430 100644 --- a/src/specification.rs +++ b/src/specification.rs @@ -114,15 +114,26 @@ impl Specification { pub fn steps(&self) -> Vec<Step> { let mut steps = vec![]; for b in self.benchmarks.iter() { + let n = b.backups.len(); + let after_base = n; + let restore_base = 2 * n; + steps.push(Step::Start(b.benchmark.to_string())); for (i, backup) in b.backups.iter().enumerate() { for change in backup.changes.iter() { steps.push(Step::from(change)); } + steps.push(Step::ManifestLive(i)); steps.push(Step::Backup(i)); + let after = after_base + i; + steps.push(Step::ManifestLive(after)); + steps.push(Step::CompareManifests(i, after)); } for (i, _) in b.backups.iter().enumerate() { steps.push(Step::Restore(i)); + let restored = restore_base + i; + steps.push(Step::ManifestRestored(restored)); + steps.push(Step::CompareManifests(i, restored)); } steps.push(Step::Stop(b.benchmark.to_string())); } |