aboutsummaryrefslogtreecommitdiff
path: root/sim
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-03-29 16:41:59 -0400
committerMike Frysinger <vapier@gentoo.org>2015-03-29 16:41:59 -0400
commit744b9a190b9b5b83d83f43d35b6ab6d20f49af8f (patch)
treed04ff645c6c26278922fcae6c725ba24f1613d4d /sim
parent92fc6153a6fdf2a027d9780f5945712aafad4a9e (diff)
downloadfsf-binutils-gdb-744b9a190b9b5b83d83f43d35b6ab6d20f49af8f.zip
fsf-binutils-gdb-744b9a190b9b5b83d83f43d35b6ab6d20f49af8f.tar.gz
fsf-binutils-gdb-744b9a190b9b5b83d83f43d35b6ab6d20f49af8f.tar.bz2
sim; testsuite: allow tests to set no output
If a test doesn't write anything at all to stdout, the current test framework can't support that. Even if you put a blank output line: # output: the setup happily clobbers that with a default pass/fail string. Tweak the parsing logic so we only set the output to pass/fail when the test has no output marker.
Diffstat (limited to 'sim')
-rw-r--r--sim/testsuite/ChangeLog6
-rw-r--r--sim/testsuite/lib/sim-defs.exp4
2 files changed, 9 insertions, 1 deletions
diff --git a/sim/testsuite/ChangeLog b/sim/testsuite/ChangeLog
index 6de8bdc..55ef169 100644
--- a/sim/testsuite/ChangeLog
+++ b/sim/testsuite/ChangeLog
@@ -1,5 +1,11 @@
2015-03-29 Mike Frysinger <vapier@gentoo.org>
+ * lib/sim-defs.exp (run_sim_test): Declare seen_output as 0. When
+ the test has an output keyword, set it to 1. Set default output only
+ when seen_output is 0.
+
+2015-03-29 Mike Frysinger <vapier@gentoo.org>
+
* configure: Regenerate.
2015-03-28 Mike Frysinger <vapier@gentoo.org>
diff --git a/sim/testsuite/lib/sim-defs.exp b/sim/testsuite/lib/sim-defs.exp
index c8093a2..fb2346a 100644
--- a/sim/testsuite/lib/sim-defs.exp
+++ b/sim/testsuite/lib/sim-defs.exp
@@ -218,6 +218,7 @@ proc run_sim_test { name requested_machs } {
set opts(xerror) "no"
set opts(xfail) ""
set opts(kfail) ""
+ set seen_output 0
if ![info exists global_as_options] {
set global_as_options ""
@@ -260,6 +261,7 @@ proc run_sim_test { name requested_machs } {
# Multiple "output" specifications concatenate, they don't override.
if { $opt_name == "output" } {
set opt_val "$opts(output)$opt_val"
+ set seen_output 1
}
# Similar with "xfail" and "kfail", but arguments are space-separated.
if { $opt_name == "xfail" || $opt_name == "kfail" } {
@@ -276,7 +278,7 @@ proc run_sim_test { name requested_machs } {
set testname $name
set sourcefile $file
- if { $opts(output) == "" } {
+ if { $seen_output == 0 } {
if { "$opts(xerror)" == "no" } {
set opts(output) "pass\n"
} else {