aboutsummaryrefslogtreecommitdiff
path: root/build2
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2016-10-28 00:50:02 +0300
committerBoris Kolpackov <boris@codesynthesis.com>2016-11-04 09:26:36 +0200
commit18235d8e5f37c0e65b5f1e3cacb6e3d27c3e05eb (patch)
tree7f41d442210d6159be2853a663af989ff58cc424 /build2
parentb3e6cb1b899dcc6b3488f10d8eee437a6f87ad15 (diff)
Add support of paths cleanups to testscript runner
Diffstat (limited to 'build2')
-rw-r--r--build2/test/script/runner.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/build2/test/script/runner.cxx b/build2/test/script/runner.cxx
index 79cbfc4..23a4a5c 100644
--- a/build2/test/script/runner.cxx
+++ b/build2/test/script/runner.cxx
@@ -189,6 +189,10 @@ namespace build2
//
// Note that we operate with normalized paths here.
//
+ // @@ What if to make cleanup insensitive to the registration order,
+ // and sorting paths properly prior removal? Would it produce any
+ // testing flaws?
+ //
set<path> rp;
for (auto& p: reverse_iterate (sp.cleanups))
{
@@ -414,6 +418,11 @@ namespace build2
//
pr.wait ();
+ // Register command-created paths for cleanup.
+ //
+ for (const auto& p: c.cleanups)
+ sp.cleanups.emplace_back (normalize (p));
+
// If there is no correct exit status by whatever reason then dump
// stderr (if cached), print the proper diagnostics and fail.
//