Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [committed][gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
@ 2021-10-08 11:08 Tom de Vries via Gdb-patches
  0 siblings, 0 replies; 2+ messages in thread
From: Tom de Vries via Gdb-patches @ 2021-10-08 11:08 UTC (permalink / raw)
  To: gdb-patches

Hi,

When running test-case gdb.mi/gdb2549.exp with check-read1, I run into:
...
FAIL: gdb.mi/gdb2549.exp: register values x (timeout)
...

Fix this by applying the same fix as for "register values t" in commit
478e490a4df "[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1".

Tested on x86_64-linux.

Committed to trunk.

Thanks,
- Tom

[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1

---
 gdb/testsuite/gdb.mi/gdb2549.exp | 46 ++++++++++++++++++----------------------
 1 file changed, 21 insertions(+), 25 deletions(-)

diff --git a/gdb/testsuite/gdb.mi/gdb2549.exp b/gdb/testsuite/gdb.mi/gdb2549.exp
index aebf9c904d9..9cdc31e532c 100644
--- a/gdb/testsuite/gdb.mi/gdb2549.exp
+++ b/gdb/testsuite/gdb.mi/gdb2549.exp
@@ -43,42 +43,23 @@ proc register_tests_no_exec { } {
 		"no executable"
 }
 
-proc register_tests { } {
-    global hex
-    global decimal
+proc register_test { n arg format } {
     global mi_gdb_prompt
-    set octal "\[0-7\]+"
-    set binary "\[0-1\]+"
-    set float "\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
-
-    mi_gdb_test "222-data-list-register-values x" \
-	    "222\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$hex\"\}.*\\\]" \
-	    "register values x"
-
-    mi_gdb_test "333-data-list-register-values f" \
-	    "333\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$float\"\}.*\\\]" \
-	    "register values f"
-
-    mi_gdb_test "444-data-list-register-values d" \
-	    "444\\^done,register-values=\\\[\{number=\"$decimal\",value=\"-?$decimal\"\}.*\\\]" \
-	    "register values d"
+    global decimal
 
-    mi_gdb_test "555-data-list-register-values o" \
-	    "555\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$octal\"\}.*\\\]" \
-	    "register values o"
+    set cmd "$n-data-list-register-values $arg"
+    set test "register values $arg"
 
-    set cmd "666-data-list-register-values t"
-    set test "register values t"
     set state 0
     gdb_test_multiple $cmd $test -prompt "$mi_gdb_prompt$" {
-	-re "666\\^done,register-values=\\\[" {
+	-re "$n\\^done,register-values=\\\[" {
 	    if { $state == 0 } {
 		set state 1
 		exp_continue
 	    }
 	    fail $gdb_test_name
 	}
-	-re "\{number=\"$decimal\",value=\"$binary\"\}" {
+	-re "\{number=\"$decimal\",value=\"$format\"\}" {
 	    if { $state != 0 } {
 		set state 2
 		exp_continue
@@ -98,6 +79,21 @@ proc register_tests { } {
     }
 }
 
+proc register_tests { } {
+    global hex
+    global decimal
+    set octal "\[0-7\]+"
+    set binary "\[0-1\]+"
+    set float \
+	"\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
+
+    register_test 222 x $hex
+    register_test 333 f $float
+    register_test 444 d -?$decimal
+    register_test 555 o $octal
+    register_test 666 t $binary
+}
+
 mi_clean_restart $binfile
 
 register_tests_no_exec

^ permalink raw reply	[flat|nested] 2+ messages in thread
* [committed][gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
@ 2020-03-03 10:36 Tom de Vries
  0 siblings, 0 replies; 2+ messages in thread
From: Tom de Vries @ 2020-03-03 10:36 UTC (permalink / raw)
  To: gdb-patches

Hi,

When running gdb.mi/gdb2549.exp with check-read1, we get:
...
Running src/gdb/testsuite/gdb.mi/gdb2549.exp ...
FAIL: gdb.mi/gdb2549.exp: register values t (timeout)
...

The problem is that the command generates a lot of output, which is matched by
a single '.*':
...
mi_gdb_test "666-data-list-register-values t" \
  "666\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$binary\"\}.*\\\]" \
  "register values t"
...

Fix this by splitting up the matching and calling exp_continue after each
number/value pair.

Tested on x86_64-linux with make targets check and check-read1.

Committed to trunk.

Thanks,
- Tom

[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1

gdb/testsuite/ChangeLog:

2020-03-03  Tom de Vries  <tdevries@suse.de>

	* gdb.mi/gdb2549.exp: Fix "register values t" check-read1 timeout.

---
 gdb/testsuite/gdb.mi/gdb2549.exp | 33 ++++++++++++++++++++++++++++++---
 1 file changed, 30 insertions(+), 3 deletions(-)

diff --git a/gdb/testsuite/gdb.mi/gdb2549.exp b/gdb/testsuite/gdb.mi/gdb2549.exp
index 0b4cb6be38..cc6441c8ec 100644
--- a/gdb/testsuite/gdb.mi/gdb2549.exp
+++ b/gdb/testsuite/gdb.mi/gdb2549.exp
@@ -51,6 +51,7 @@ proc register_tests_no_exec { } {
 proc register_tests { } {
     global hex
     global decimal
+    global mi_gdb_prompt
     set octal "\[0-7\]+"
     set binary "\[0-1\]+"
     set float "\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
@@ -71,9 +72,35 @@ proc register_tests { } {
 	    "555\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$octal\"\}.*\\\]" \
 	    "register values o"
 
-    mi_gdb_test "666-data-list-register-values t" \
-	    "666\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$binary\"\}.*\\\]" \
-	    "register values t"
+    set cmd "666-data-list-register-values t"
+    set test "register values t"
+    set state 0
+    gdb_test_multiple $cmd $test -prompt "$mi_gdb_prompt$" {
+	-re "666\\^done,register-values=\\\[" {
+	    if { $state == 0 } {
+		set state 1
+		exp_continue
+	    }
+	    fail $gdb_test_name
+	}
+	-re "\{number=\"$decimal\",value=\"$binary\"\}" {
+	    if { $state != 0 } {
+		set state 2
+		exp_continue
+	    }
+	    fail $gdb_test_name
+	}
+	-re "\{number=\"$decimal\",value=\"\[^\"\]*\"\}" {
+	    exp_continue
+	}
+	-re "\]\r\n$mi_gdb_prompt$" {
+	    if { $state == 2 } {
+		pass $gdb_test_name
+	    } else {
+		fail $gdb_test_name
+	    }
+	}
+    }
 }
 
 register_tests_no_exec


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-10-08 11:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-08 11:08 [committed][gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1 Tom de Vries via Gdb-patches
  -- strict thread matches above, loose matches on Subject: below --
2020-03-03 10:36 Tom de Vries

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox