This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] sim; testsuite: allow tests to set no output


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=744b9a190b9b5b83d83f43d35b6ab6d20f49af8f

commit 744b9a190b9b5b83d83f43d35b6ab6d20f49af8f
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Sun Mar 29 16:41:59 2015 -0400

    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.

Diff:
---
 sim/testsuite/ChangeLog        | 6 ++++++
 sim/testsuite/lib/sim-defs.exp | 4 +++-
 2 files changed, 9 insertions(+), 1 deletion(-)

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 {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]