summaryrefslogtreecommitdiff
path: root/src/specification.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/specification.rs')
-rw-r--r--src/specification.rs11
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()));
}