From 59b28c5dd267407c63968cb18d9f3c5aa78fa2ba Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Fri, 23 Aug 2013 12:18:27 -0600 Subject: update checkpoint test This fixes the "checkpoint" test to use the standard output directory. This makes the test be parallel-safe. 2013-11-04 Tom Tromey * gdb.base/checkpoint.c (main): Use PI_TXT and COPY1_TXT defines. * gdb.base/checkpoint.exp: Define PI_TXT and COPY1_TXT during compilation. Use prepare_for_testing, standard_output_file. --- gdb/testsuite/ChangeLog | 7 +++++++ gdb/testsuite/gdb.base/checkpoint.c | 6 +++--- gdb/testsuite/gdb.base/checkpoint.exp | 30 ++++++++++++++++-------------- 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 60cc77e..7f076f8 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,12 @@ 2013-11-04 Tom Tromey + * gdb.base/checkpoint.c (main): Use PI_TXT and COPY1_TXT + defines. + * gdb.base/checkpoint.exp: Define PI_TXT and COPY1_TXT during + compilation. Use prepare_for_testing, standard_output_file. + +2013-11-04 Tom Tromey + * gdb.base/advance.exp: Use standard_testfile and prepare_for_testing. * gdb.base/bigcore.exp: Use standard_output_file. "cd" to diff --git a/gdb/testsuite/gdb.base/checkpoint.c b/gdb/testsuite/gdb.base/checkpoint.c index c287094..d498047 100644 --- a/gdb/testsuite/gdb.base/checkpoint.c +++ b/gdb/testsuite/gdb.base/checkpoint.c @@ -28,8 +28,8 @@ main() long i; int c = 0; - in = fopen ("pi.txt", "r"); - out = fopen ("copy1.txt", "w"); + in = fopen (PI_TXT, "r"); + out = fopen (COPY1_TXT, "w"); if (!in || !out) { @@ -54,6 +54,6 @@ main() fclose (in); fclose (out); printf ("Deleting copy.\n"); /* breakpoint 3 */ - unlink ("copy1.txt"); + unlink (COPY1_TXT); exit (0); /* breakpoint 4 */ } diff --git a/gdb/testsuite/gdb.base/checkpoint.exp b/gdb/testsuite/gdb.base/checkpoint.exp index b86fead..f1af471 100644 --- a/gdb/testsuite/gdb.base/checkpoint.exp +++ b/gdb/testsuite/gdb.base/checkpoint.exp @@ -27,23 +27,25 @@ if {![istarget "*-*-linux*"]} then { standard_testfile .c -if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { +set pi_txt [gdb_remote_download host ${srcdir}/${subdir}/pi.txt] +if {[is_remote host]} { + set copy1_txt copy1.txt +} else { + set copy1_txt [standard_output_file copy1.txt] +} + +if {[prepare_for_testing ${testfile}.exp $testfile $srcfile \ + [list debug "additional_flags=-DPI_TXT=\"$pi_txt\" -DCOPY1_TXT=\"$copy1_txt\""]]} { untested checkpoint.exp return -1 } -# Start with a fresh gdb - -clean_restart ${binfile} - global gdb_prompt # # This tests gdb checkpoint and restart. # -remote_download host ${srcdir}/${subdir}/pi.txt pi.txt - runto_main set break1_loc [gdb_get_line_number "breakpoint 1"] set break2_loc [gdb_get_line_number "breakpoint 2"] @@ -148,8 +150,8 @@ gdb_test "restart 0" "Switching to .*breakpoint 2.*" "restart 0 one" gdb_breakpoint $break3_loc gdb_test "continue" "breakpoint 3.*" "break3 one" -gdb_test "shell diff -s pi.txt copy1.txt" \ - "Files pi.txt and copy1.txt are identical.*" \ +gdb_test "shell diff -s $pi_txt $copy1_txt" \ + "Files .*pi.txt and .*copy1.txt are identical.*" \ "Diff input and output one" # @@ -201,8 +203,8 @@ gdb_test "continue 1100" "breakpoint 1.*" "breakpoint 1 7 one" gdb_test "step" "if .c == EOF.*" "step in 7 two" gdb_test "print lines" " = 1162.*" "verify lines 7 two" -gdb_test "shell diff -s pi.txt copy1.txt" \ - "Files pi.txt and copy1.txt are identical.*" \ +gdb_test "shell diff -s $pi_txt $copy1_txt" \ + "Files .*pi.txt and .*copy1.txt are identical.*" \ "Diff input and output two" # @@ -214,8 +216,8 @@ gdb_test "restart 0" "Switching to .*breakpoint 3.*" "restart 0 one" gdb_breakpoint $break4_loc gdb_test "continue" "breakpoint 4.*" "break4 one" -gdb_test "shell diff pi.txt copy1.txt" \ - "diff: copy1.txt: No such file or directory" \ +gdb_test "shell diff $pi_txt $copy1_txt" \ + "diff: .*copy1.txt: No such file or directory" \ "delete copy1" delete_breakpoints @@ -370,4 +372,4 @@ verbose "Timeout now $timeout sec." # Finished: cleanup # -remote_exec build "rm -f pi.txt" +remote_exec host "rm -f $pi_txt" -- cgit v1.1