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.
This commit is contained in:
parent
92fc6153a6
commit
744b9a190b
2 changed files with 9 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
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.
|
||||
|
|
|
@ -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 {
|
||||
|
|
Loading…
Reference in a new issue