public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] [gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
@ 2021-10-08 11:07 Tom de Vries
0 siblings, 0 replies; 2+ messages in thread
From: Tom de Vries @ 2021-10-08 11:07 UTC (permalink / raw)
To: gdb-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2550e478ad11b199780b733f2c657ab8ffdb0f14
commit 2550e478ad11b199780b733f2c657ab8ffdb0f14
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Oct 8 13:07:52 2021 +0200
[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
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.
Diff:
---
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
* [binutils-gdb] [gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
@ 2020-03-03 10:35 Tom de Vries
0 siblings, 0 replies; 2+ messages in thread
From: Tom de Vries @ 2020-03-03 10:35 UTC (permalink / raw)
To: gdb-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=478e490a4df79436d678ca5f5f1d7c7ac7befa79
commit 478e490a4df79436d678ca5f5f1d7c7ac7befa79
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Mar 3 11:34:53 2020 +0100
[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
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.
gdb/testsuite/ChangeLog:
2020-03-03 Tom de Vries <tdevries@suse.de>
* gdb.mi/gdb2549.exp: Fix "register values t" check-read1 timeout.
Diff:
---
gdb/testsuite/ChangeLog | 4 ++++
gdb/testsuite/gdb.mi/gdb2549.exp | 33 ++++++++++++++++++++++++++++++---
2 files changed, 34 insertions(+), 3 deletions(-)
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 73a05d3..0563fec 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,9 @@
2020-03-03 Tom de Vries <tdevries@suse.de>
+ * gdb.mi/gdb2549.exp: Fix "register values t" check-read1 timeout.
+
+2020-03-03 Tom de Vries <tdevries@suse.de>
+
* gdb.mi/list-thread-groups-available.exp: Use -prompt syntax for
gdb_test_multiple call.
diff --git a/gdb/testsuite/gdb.mi/gdb2549.exp b/gdb/testsuite/gdb.mi/gdb2549.exp
index 0b4cb6b..cc6441c 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:07 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:07 [binutils-gdb] [gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1 Tom de Vries
-- strict thread matches above, loose matches on Subject: below --
2020-03-03 10:35 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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).