]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Generalised reg test script: instead of having a "delete:" line, for removing
authorNicholas Nethercote <n.nethercote@gmail.com>
Thu, 18 Nov 2004 11:57:00 +0000 (11:57 +0000)
committerNicholas Nethercote <n.nethercote@gmail.com>
Thu, 18 Nov 2004 11:57:00 +0000 (11:57 +0000)
files once a test has completed, we have a "cleanup:" line, which specifies a
cleanup command.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3039

16 files changed:
cachegrind/tests/chdir.vgtest
cachegrind/tests/dlclose.vgtest
cachegrind/tests/x86/fpu-28-108.vgtest
cachegrind/tests/x86/insn_basic.vgtest
cachegrind/tests/x86/insn_cmov.vgtest
cachegrind/tests/x86/insn_fpu.vgtest
cachegrind/tests/x86/insn_mmx.vgtest
cachegrind/tests/x86/insn_mmxext.vgtest
cachegrind/tests/x86/insn_sse.vgtest
cachegrind/tests/x86/insn_sse2.vgtest
massif/tests/true_html.vgtest
massif/tests/true_text.vgtest
memcheck/tests/badjump.vgtest
memcheck/tests/scalar.vgtest
none/tests/x86/int.vgtest
tests/vg_regtest.in

index c91b4b673f5cf7a1c588ea7d3125dcc88a305c7e..041c5cf3d07afa32ca1cf046cc549a16818fb4d4 100644 (file)
@@ -1,2 +1,2 @@
 prog: chdir
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 353a3243aff9908ce13917a7af42118f59a9059f..d61200f948e31e02d427356ba3122551af114999 100644 (file)
@@ -1,3 +1,3 @@
 prog: dlclose
 stderr_filter: filter_cachesim_discards
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 84d3bcff8ec849482a93b0df6e611010068e81da..47c2606bc6746251c85dca439a1d914ce81ba519 100644 (file)
@@ -1,3 +1,3 @@
 prog: fpu-28-108
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
 cpu_test: x86
index 47724f979f3ae61d71e5b0c42493ddfd0802c63c..9ab1b2160cf0ed2be262f0fdf2f624a71f2c8ae6 100644 (file)
@@ -1,3 +1,3 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_basic
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index dfaedb37edc6ef713e2dda945837881cdabd7906..3d5d2bc2d6e03de27d53e24468dbd94fb172bef7 100644 (file)
@@ -1,4 +1,4 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_cmov
 cpu_test: x86-cmov
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 260dcc247717079761c1261c19b3187cc96850c6..486ce5869d42df690971acbad0ca2ae8a1b1ce08 100644 (file)
@@ -1,4 +1,4 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_fpu
 cpu_test: x86-fpu
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 4699b4bbb28fbb29818a534fbe1b597f2085416c..36dcc2063dd007e3c5867ad89895f05d0f0064b2 100644 (file)
@@ -1,4 +1,4 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_mmx
 cpu_test: x86-mmx
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 2dd2c72d014813aea564fa95fa1253a6534dce59..96da64d193ccc8f2ddc392ec3f57359cab27fcc8 100644 (file)
@@ -1,4 +1,4 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_mmxext
 cpu_test: x86-mmxext
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 042f757a5f14b692adf59a029fad314255d15a3c..08837b6371b0bba4813e8aac29088273abb18e00 100644 (file)
@@ -1,4 +1,4 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_sse
 cpu_test: x86-sse
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 326f0e8b67ba321f031a16f626969b2d847e4c06..b0fe3e76a15470a7478840b28bc39f4fd6fb1399 100644 (file)
@@ -1,4 +1,4 @@
 vgopts: -q
 prog: ../../../none/tests/x86/insn_sse2
 cpu_test: x86-sse2
-delete: cachegrind.out.*
+cleanup: rm cachegrind.out.*
index 7dfc68d82323b2c7f754e0e6e00a7d27b8f878a7..b698a3e3577f653c584f0a90ae9fb02d6e3aa1f9 100644 (file)
@@ -1,3 +1,3 @@
 prog: ../../tests/true
 vgopts: --format=html
-delete: massif.*.*
+cleanup: rm massif.*.*
index 79f9796c44771d58bfc81dbea61aa78729dfd217..2df33d7a350f567c504b4eea8ccc530178f28fca 100644 (file)
@@ -1,3 +1,3 @@
 prog: ../../tests/true
 vgopts: --format=text
-delete: massif.*.*
+cleanup: rm massif.*.*
index 6a8608959a6999fb1ca2b63be0f0ae4618463745..f626a1b7f5ae2fba11d83c8d7fa8bebd98abbe8a 100644 (file)
@@ -1,2 +1,2 @@
 prog: badjump
-delete: vgcore.pid*
+cleanup: rm vgcore.pid*
index 05531938a8fe9a207d6aa3c088ce258fbed2a1b3..851e22b014ed53ea86d4167c873ca72544e8a523 100644 (file)
@@ -1,4 +1,4 @@
 prog: scalar
 vgopts: -q --error-limit=no
 args: < scalar.c
-delete: tmp_write_file_foo
+cleanup: rm tmp_write_file_foo
index 8f962a7954e252107fa416bb1be5c59840a94a14..df0b93a11a4dc867fd77e309f44f7ad5bba56aa4 100644 (file)
@@ -1,3 +1,3 @@
 prog: int
 stderr_filter: filter_int
-delete: vgcore.pid*
+cleanup: rm vgcore.pid*
index 676bbf85924e0ed099c498b5777c67da9c488812..7bb2d92cd4542b29aa114e37f2f0922ed1f1da10 100755 (executable)
@@ -50,7 +50,7 @@
 #   - stdout_filter: <filter to run stdout through> (default: none)
 #   - stderr_filter: <filter to run stderr through> (default: ./filter_stderr)
 #   - cpu_test: <cpu feature required for test>     (default: none)
-#   - delete: <created file(s) to delete>           (default: none)
+#   - cleanup: <post-test cleanup cmd to run>       (default: none)
 #
 # Note that filters are necessary for stderr results to filter out things that
 # always change, eg. process id numbers.
@@ -83,7 +83,7 @@ my $args;               # test prog args
 my $stdout_filter;      # filter program to run stdout results file through
 my $stderr_filter;      # filter program to run stderr results file through
 my $cpu_test;           # cpu feature to check for before running test
-my $delete;             # file(s) to delete
+my $cleanup;            # cleanup command to run
 
 my @failures;           # List of failed tests
 
@@ -169,7 +169,7 @@ sub read_vgtest_file($)
     my ($f) = @_;
 
     # Defaults.
-    ($vgopts, $prog, $args, $stdout_filter, $stderr_filter, $cpu_test, $delete)
+    ($vgopts, $prog, $args, $stdout_filter, $stderr_filter, $cpu_test, $cleanup)
       = ("", undef, "", undef, undef, undef, undef);
 
     # Every test directory must have a "filter_stderr"
@@ -190,8 +190,8 @@ sub read_vgtest_file($)
             $stderr_filter = validate_program(".", $1, 1, 1);
         } elsif ($line =~ /^\s*cpu_test:\s*(.*)$/) {
             $cpu_test = $1;
-        } elsif ($line =~ /^\s*delete:\s*(.*)$/) {
-            $delete = $1;
+        } elsif ($line =~ /^\s*cleanup:\s*(.*)$/) {
+            $cleanup = $1;
         } else {
             die "Bad line in $f: $line\n";
         }
@@ -297,8 +297,9 @@ sub do_one_test($$)
     do_diffs($fullname, $name, "stdout", \@stdout_exps); 
     do_diffs($fullname, $name, "stderr", \@stderr_exps); 
  
-    if (defined $delete) {
-        unlink(glob($delete));
+    if (defined $cleanup) {
+        (system("$cleanup") == 0) or 
+            print("(cleanup operation failed: $cleanup)\n");
     }
 
     $num_tests_done++;