fix up gdb.mi
authorTom Tromey <tromey@redhat.com>
Fri, 23 Aug 2013 16:44:49 +0000 (10:44 -0600)
committerTom Tromey <tromey@redhat.com>
Mon, 4 Nov 2013 18:02:06 +0000 (11:02 -0700)
This fixes gdb.mi to be parallel-safe.

2013-11-04  Tom Tromey  <tromey@redhat.com>

* 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
gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp
gdb/testsuite/gdb.mi/mi-file-transfer.exp
gdb/testsuite/gdb.mi/mi-logging.exp

index f0c8f91..c3fc5c5 100644 (file)
@@ -1,5 +1,13 @@
 2013-11-04  Tom Tromey  <tromey@redhat.com>
 
+       * 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  <tromey@redhat.com>
+
        * gdb.xml/tdesc-arch.exp: Use standard_output_file.  Make
        downloads conditional on remote host.
        (set_arch): Likewise.
index 1791c97..7ba8724 100644 (file)
@@ -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
index 9229fde..dbf0d66 100644 (file)
@@ -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
index 87f3e1b..b38c036 100644 (file)
@@ -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" ".*"