From 847415068e83cdeb6aeff56c31722f13584e74c1 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Fri, 23 Aug 2013 10:44:49 -0600 Subject: [PATCH] fix up gdb.mi This fixes gdb.mi to be parallel-safe. 2013-11-04 Tom Tromey * gdb.mi/mi-cmd-param-changed.exp (test_command_param_changed): Use "dwarf2 always-disassemble" for the "maint set" test. * gdb.mi/mi-file-transfer.exp (test_file_transfer): Use standard_output_file. * gdb.mi/mi-logging.exp: Use standard_output_file. --- gdb/testsuite/ChangeLog | 8 ++++++++ gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp | 6 +++--- gdb/testsuite/gdb.mi/mi-file-transfer.exp | 26 +++++++++++++++++++------- gdb/testsuite/gdb.mi/mi-logging.exp | 2 +- 4 files changed, 31 insertions(+), 11 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index f0c8f91..c3fc5c5 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,13 @@ 2013-11-04 Tom Tromey + * gdb.mi/mi-cmd-param-changed.exp (test_command_param_changed): + Use "dwarf2 always-disassemble" for the "maint set" test. + * gdb.mi/mi-file-transfer.exp (test_file_transfer): Use + standard_output_file. + * gdb.mi/mi-logging.exp: Use standard_output_file. + +2013-11-04 Tom Tromey + * gdb.xml/tdesc-arch.exp: Use standard_output_file. Make downloads conditional on remote host. (set_arch): Likewise. diff --git a/gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp b/gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp index 1791c97..7ba8724 100644 --- a/gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp +++ b/gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp @@ -85,9 +85,9 @@ proc test_command_param_changed { } { # No notification is emitted for 'maint set' commands. foreach boolean_opt { "on" "off" } { - mi_gdb_test "maint set profile ${boolean_opt}" \ - "\\&\"maint set profile ${boolean_opt}\\\\n\"\r\n\\^done" \ - "\"maint set profile ${boolean_opt}\"" + mi_gdb_test "maint set dwarf2 always-disassemble ${boolean_opt}" \ + "\\&\"maint set dwarf2 always-disassemble ${boolean_opt}\\\\n\"\r\n\\^done" \ + "\"maint dwarf2 always-disassemble ${boolean_opt}\"" } # Full command parameters are included in the notification when a diff --git a/gdb/testsuite/gdb.mi/mi-file-transfer.exp b/gdb/testsuite/gdb.mi/mi-file-transfer.exp index 9229fde..dbf0d66 100644 --- a/gdb/testsuite/gdb.mi/mi-file-transfer.exp +++ b/gdb/testsuite/gdb.mi/mi-file-transfer.exp @@ -54,15 +54,27 @@ proc mi_gdbserver_run { } { } proc test_file_transfer { filename description } { - mi_gdb_test "-target-file-put \"$filename\" \"down-server\"" \ + # If we are running everything locally, then we want to be sure to + # put the files into the test's standard output location. On the + # other hand, if the host or target is remote, then we need to + # continue with the "old-style" directory-less approach. + if {![is_remote host] && ![is_remote target]} { + set up_server [standard_output_file up-server] + set down_server [standard_output_file down-server] + } else { + set up_server up-server + set down_server down-server + } + + mi_gdb_test "-target-file-put \"$filename\" \"${down_server}\"" \ "\\^done" "put $description" - mi_gdb_test "-target-file-get \"down-server\" \"up-server\"" \ + mi_gdb_test "-target-file-get \"${down_server}\" \"${up_server}\"" \ "\\^done" "get $description" if { ![is_remote target] } { # If we can check the target copy of the file, do that too. # This should catch symmetric errors in upload and download. - set result [remote_exec host "cmp -s $filename down-server"] + set result [remote_exec host "cmp -s $filename ${down_server}"] if { [lindex $result 0] == 0 } { pass "compare intermediate $description" } else { @@ -70,25 +82,25 @@ proc test_file_transfer { filename description } { } } - set result [remote_exec host "cmp -s $filename up-server"] + set result [remote_exec host "cmp -s $filename ${up_server}"] if { [lindex $result 0] == 0 } { pass "compare $description" } else { fail "compare $description" } - mi_gdb_test "-target-file-delete \"down-server\"" \ + mi_gdb_test "-target-file-delete \"${down_server}\"" \ "\\^done" "deleted $description" if { ![is_remote target] } { - if { ! [remote_file target exists down-server] } { + if { ! [remote_file target exists ${down_server}] } { pass "verified deleted $description" } else { fail "verified deleted $description" } } - catch { file delete up-server } + catch { file delete ${up_server} } } mi_gdbserver_run diff --git a/gdb/testsuite/gdb.mi/mi-logging.exp b/gdb/testsuite/gdb.mi/mi-logging.exp index 87f3e1b..b38c036 100644 --- a/gdb/testsuite/gdb.mi/mi-logging.exp +++ b/gdb/testsuite/gdb.mi/mi-logging.exp @@ -33,7 +33,7 @@ if {[mi_run_to_main] < 0} { return -1 } -set milogfile "milog.txt" +set milogfile [standard_output_file "milog.txt"] mi_gdb_test "-gdb-set logging file $milogfile" ".*" -- 2.7.4