2002-12-13 Jeff Johnston <jjohnstn@redhat.com>
authorJeff Johnston <jjohnstn@redhat.com>
Fri, 13 Dec 2002 17:57:38 +0000 (17:57 +0000)
committerJeff Johnston <jjohnstn@redhat.com>
Fri, 13 Dec 2002 17:57:38 +0000 (17:57 +0000)
        * mi-basics.exp: Change tests for -environment-directory.  Also add
        tests for -environment-cd, -environment-pwd, and -environment-path.
        Part of fix for PR gdb/741.

gdb/testsuite/gdb.mi/ChangeLog
gdb/testsuite/gdb.mi/mi-basics.exp

index 8b4426b3da1e285247d991b879a01296871fcd06..2e2a82e3c85018979c72096f33b298c69042fb98 100644 (file)
@@ -1,3 +1,9 @@
+2002-12-13  Jeff Johnston  <jjohnstn@redhat.com>
+
+       * mi-basics.exp: Change tests for -environment-directory.  Also add
+       tests for -environment-cd, -environment-pwd, and -environment-path.
+       Part of fix for PR gdb/741.
+
 2002-11-05  Jeff Johnston  <jjohnstn@redhat.com>
 
        * gdb792.cc: New file to test patch for PR gdb/792.
index 4913d8f8b35e6011ebe3972380ed5ab1f86e3572..98ffe1d2acfec77909dfc971c065620475bacace 100644 (file)
@@ -148,26 +148,98 @@ proc test_dir_specification {} {
     global srcdir
     global subdir
 
-    # Clear the search directories, then specify one to be searched
+    # Add to the search directories, display, then reset back to default
     # Tests:
-    # -environment-directory
     # -environment-directory arg
+    # -environment-directory 
+    # -environment-directory -r
 
 #exp_internal 1
-    mi_gdb_test "202-environment-directory" \
-             "\\\^done" \
+    mi_gdb_test "202-environment-directory ${srcdir}/${subdir}" \
+             "\\\^done,source-path=\"${srcdir}/${subdir}.\\\$cdir.\\\$cwd\"" \
+             "environment-directory arg operation"
+
+    mi_gdb_test "203-environment-directory" \
+             "\\\^done,source-path=\"${srcdir}/${subdir}.\\\$cdir.\\\$cwd\"" \
+             "environment-directory empty-string operation"
+
+    mi_gdb_test "204-environment-directory -r" \
+             "\\\^done,source-path=\"\\\$cdir.\\\$cwd\"" \
              "environment-directory operation"
 
-    mi_gdb_test "203-environment-directory ${srcdir}/${subdir}" \
-             "\\\^done" \
-             "environment-directory arg operation"
 #exp_internal 0
 }
 
+proc test_cwd_specification {} {
+    global mi_gdb_prompt
+    global objdir
+    global subdir
+
+    # Change the working directory, then print the current working directory
+    # Tests:
+    # -environment-cd ${objdir}
+    # -environment-pwd
+
+    mi_gdb_test "205-environment-cd ${objdir}" \
+             "\\\^done" \
+             "environment-cd arg operation"
+
+    mi_gdb_test "206-environment-pwd" \
+             "\\\^done,cwd=\"${objdir}\"" \
+             "environment-pwd operation"
+}
+
+proc test_path_specification {} {
+    global mi_gdb_prompt
+    global orig_path
+    global objdir
+    global srcdir
+
+    # Add to the path, display, then reset 
+    # Tests:
+    # -environment-path 
+    # -environment-path dir1 dir2
+    # -environment-path -r dir
+    # -environment-path -r
+
+#exp_internal 1
+
+    send_gdb "-environment-path\n"
+    gdb_expect 20 {
+       -re "\\\^done,path=\"\(.*\)\"\r\n$mi_gdb_prompt" { 
+         set orig_path $expect_out(1,string); 
+       }
+       timeout { 
+         perror "-environment-path (timeout)" ; 
+         return 
+       }
+    }
+
+    mi_gdb_test "207-environment-path" \
+             "\\\^done,path=\"$orig_path\"" \
+             "environment-path no-args operation"
+
+    mi_gdb_test "208-environment-path $srcdir $objdir" \
+             "\\\^done,path=\"$srcdir.$objdir.$orig_path\"" \
+             "environment-path dir1 dir2 operation"
+
+    mi_gdb_test "209-environment-path -r $objdir" \
+             "\\\^done,path=\"$objdir.$orig_path\"" \
+             "environment-path -r dir operation"
+
+    mi_gdb_test "210-environment-path -r" \
+             "\\\^done,path=\"$orig_path\"" \
+             "environment-path -r operation"
+
+#exp_internal 0
+} 
+
 if [test_mi_interpreter_selection] {
   test_exec_and_symbol_mi_operatons
   test_breakpoints_deletion
   test_dir_specification
+  test_cwd_specification
+  test_path_specification
 }
 
 mi_gdb_exit