summaryrefslogtreecommitdiff
path: root/gdb/testsuite
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite')
-rw-r--r--gdb/testsuite/ChangeLog4
-rw-r--r--gdb/testsuite/gdb.base/argv0-symlink.exp119
2 files changed, 68 insertions, 55 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index a790e6856ae..73035a906da 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2021-06-24 Tom de Vries <tdevries@suse.de>
+
+ * gdb.base/argv0-symlink.exp: Use with_test_prefix.
+
2021-06-23 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (gdb_test_lines): Rewrite to accept single
diff --git a/gdb/testsuite/gdb.base/argv0-symlink.exp b/gdb/testsuite/gdb.base/argv0-symlink.exp
index f39f75c8d7c..f55d9861603 100644
--- a/gdb/testsuite/gdb.base/argv0-symlink.exp
+++ b/gdb/testsuite/gdb.base/argv0-symlink.exp
@@ -38,73 +38,82 @@ if { [build_executable ${testfile}.exp ${testfile} ${srcfile}] == -1 } {
return -1
}
-set test "kept file symbolic link name"
-set filelink "${testfile}-filelink"
-
-remote_file host delete [standard_output_file $filelink]
-set status [remote_exec host "ln -sf ${testfile} [standard_output_file $filelink]"]
-if {[lindex $status 0] != 0} {
- unsupported "$test (host does not support symbolic links)"
- return 0
-}
-
-clean_restart "$filelink"
+with_test_prefix "file symlink" {
-if ![runto_main] {
- untested "could not run to main"
- return -1
-}
+ set test "kept name"
+ set filelink "${testfile}-filelink"
-gdb_test_no_output "set print repeats 10000"
-gdb_test_no_output "set print elements 10000"
+ remote_file host delete [standard_output_file $filelink]
+ set status [remote_exec host \
+ "ln -sf ${testfile} [standard_output_file $filelink]"]
+ if {[lindex $status 0] != 0} {
+ unsupported "$test (host does not support symbolic links)"
+ return 0
+ }
-if { $has_argv0 } {
- gdb_test {print argv[0]} "/$filelink\"" $test
-} else {
- unsupported $test
-}
+ clean_restart "$filelink"
-# For a link named /PATH/TO/DIR/LINK, we want to check the output
-# against "/DIR/LINK", but computed in a way that doesn't make
-# assumptions about the test directory layout.
-set full_filelink [standard_output_file $filelink]
-set lastdir [file tail [file dirname $full_filelink]]
+ if ![runto_main] {
+ untested "could not run to main"
+ return -1
+ }
-gdb_test "info inferiors" "/$lastdir/$filelink *" "$test for info inferiors"
+ gdb_test_no_output "set print repeats 10000"
+ gdb_test_no_output "set print elements 10000"
+ if { $has_argv0 } {
+ gdb_test {print argv[0]} "/$filelink\"" $test
+ } else {
+ unsupported $test
+ }
-set test "kept directory symbolic link name"
-set dirlink "${testfile}-dirlink"
+ # For a link named /PATH/TO/DIR/LINK, we want to check the output
+ # against "/DIR/LINK", but computed in a way that doesn't make
+ # assumptions about the test directory layout.
+ set full_filelink [standard_output_file $filelink]
+ set lastdir [file tail [file dirname $full_filelink]]
-# 'ln -sf' does not overwrite symbol link to a directory.
-# 'remote_file host delete' uses stat (not lstat), therefore it refuses to
-# delete a directory.
-remote_exec host "rm -f [standard_output_file $dirlink]"
-set status [remote_exec host "ln -sf . [standard_output_file $dirlink]"]
-if {[lindex $status 0] != 0} {
- unsupported "$test (host does not support symbolic links)"
- return 0
+ gdb_test "info inferiors" "/$lastdir/$filelink *" \
+ "$test for info inferiors"
}
-clean_restart "$dirlink/$filelink"
+with_test_prefix "dir symlink" {
-if ![runto_main] {
- untested "could not run to main"
- return -1
-}
+ set test "kept name"
+ set dirlink "${testfile}-dirlink"
+
+ # 'ln -sf' does not overwrite symbol link to a directory.
+ # 'remote_file host delete' uses stat (not lstat), therefore it refuses to
+ # delete a directory.
+ remote_exec host "rm -f [standard_output_file $dirlink]"
+ set status [remote_exec host "ln -sf . [standard_output_file $dirlink]"]
+ if {[lindex $status 0] != 0} {
+ unsupported "$test (host does not support symbolic links)"
+ return 0
+ }
-gdb_test_no_output "set print repeats 10000"
-gdb_test_no_output "set print elements 10000"
+ clean_restart "$dirlink/$filelink"
-if { $has_argv0 } {
- # gdbserver in extended-remote mode does not have this issue.
- # Plain remote does, however.
- if {[target_info gdb_protocol] != "extended-remote" || ![target_is_gdbserver]} {
- setup_kfail "*-*-*" gdb/15934
+ if ![runto_main] {
+ untested "could not run to main"
+ return -1
+ }
+
+ gdb_test_no_output "set print repeats 10000"
+ gdb_test_no_output "set print elements 10000"
+
+ if { $has_argv0 } {
+ # gdbserver in extended-remote mode does not have this issue.
+ # Plain remote does, however.
+ if { [target_info gdb_protocol] != "extended-remote"
+ || ![target_is_gdbserver] } {
+ setup_kfail "*-*-*" gdb/15934
+ }
+ gdb_test {print argv[0]} "/$dirlink/$filelink\"" $test
+ } else {
+ unsupported $test
}
- gdb_test {print argv[0]} "/$dirlink/$filelink\"" $test
-} else {
- unsupported $test
-}
-gdb_test "info inferiors" "/$lastdir/$filelink *" "$test for info inferiors"
+ gdb_test "info inferiors" "/$lastdir/$filelink *" \
+ "$test for info inferiors"
+}