[gdb/testsuite] Handle USE_TUI in gdb.tui/corefile-run.exp
authorTom de Vries <tdevries@suse.de>
Mon, 13 Mar 2023 16:20:09 +0000 (17:20 +0100)
committerTom de Vries <tdevries@suse.de>
Mon, 13 Mar 2023 16:20:09 +0000 (17:20 +0100)
Once in a while I find myself rewriting a TUI test-case into a non-TUI
test-case, to better understand whether the problem I'm looking at is
related to the TUI or not.

I've got the impression that I've done this sufficiently often that it's worth
committing the non-TUI version, so having just written a non-TUI version of
gdb.tui/corefile-run.exp, let's commit it.

The non-TUI version can be enabled by doing:
...
$ make check "RUNTESTFLAGS=gdb.tui/corefile-run.exp USE_TUI=0"
...

Also remove hard-coding of a source line number.

Tested on x86_64-linux.

gdb/testsuite/gdb.tui/corefile-run.exp

index 2109a0ae3eb9e1186c8ca8423c99d7b41bcaf9c2..6769dfbd80005456fcfa3e7caa1661307a4cdb8a 100644 (file)
@@ -40,6 +40,19 @@ if { ![gdb_gcore_cmd "$core" "save a corefile"] } {
     return -1
 }
 
+set src_line "return 0;"
+set src_line_nr [gdb_get_line_number $src_line]
+
+set run_re \
+    "\\\[Inferior $decimal \\\(process $decimal\\\) exited normally\\]"
+
+if { [info exists USE_TUI] && $USE_TUI == 0 } {
+    clean_restart $testfile
+    gdb_test "core-file $core" $src_line "load corefile"
+    gdb_test "run" $run_re "run until the end"
+    return
+}
+
 Term::clean_restart 24 80 $testfile
 if {![Term::enter_tui]} {
     unsupported "TUI not supported"
@@ -51,8 +64,7 @@ gdb_assert {![string match "No Source Available" $text]} \
     "initial source listing"
 
 Term::command "core-file $core"
-Term::check_contents "load corefile" "21 *return 0.*$gdb_prompt .*"
+Term::check_contents "load corefile" "$src_line_nr *$src_line.*$gdb_prompt .*"
 
 Term::command "run"
-Term::check_contents "run until the end" \
-    "\\\[Inferior $decimal \\\(process $decimal\\\) exited normally\\]"
+Term::check_contents "run until the end" $run_re