--- testsuite/gdb.trace/Makefile.in | 2 testsuite/gdb.trace/disconnected-tracing.c | 5 ++ testsuite/gdb.trace/disconnected-tracing.exp | 59 +++++++++++++++++++++++++++ 3 files changed, 65 insertions(+), 1 deletion(-) --- a/testsuite/gdb.trace/Makefile.in +++ b/testsuite/gdb.trace/Makefile.in @@ -5,7 +5,7 @@ srcdir = @srcdir@ PROGS = ax backtrace deltrace infotrace packetlen passc-dyn passcount \ report save-trace tfile tfind tracecmd tsv unavailable while-dyn \ - while-stepping + while-stepping disconnected-tracing all info install-info dvi install uninstall installcheck check: @echo "Nothing to be done for $@..." --- /dev/null +++ b/testsuite/gdb.trace/disconnected-tracing.c @@ -0,0 +1,5 @@ +int +main() +{ + return 0; +} \ No newline at end of file --- /dev/null +++ b/testsuite/gdb.trace/disconnected-tracing.exp @@ -0,0 +1,59 @@ +# Copyright 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Test of disconnected-tracing. + +load_lib "trace-support.exp"; + +set testfile "disconnected-tracing" +set executable $testfile +set srcfile ${testfile}.c +set binfile $objdir/$subdir/$testfile +set expfile $testfile.exp +set gdbserver_reconnect_p 1 + +if [prepare_for_testing $expfile $executable $srcfile \ + {debug nowarnings}] { + untested "failed to prepare for trace tests" + return -1 +} + +if ![runto_main] { + fail "Can't run to main to check for trace support" + return -1 +} + +if ![gdb_target_supports_trace] { + unsupported "target does not support trace" + return -1; +} + +gdb_test_no_output "set confirm off" ".*" + +gdb_test "trace main" ".*" +gdb_test "tstart" ".*" + +gdb_test "info tracepoints" ".*in main at.*" "First info tracepoints" +gdb_test "disconnect" ".*" + +gdb_target_cmd $gdbserver_protocol $gdbserver_gdbport +gdb_test "info tracepoints" ".*in main at.*" "Second info tracepoints" +gdb_test "disconnect" ".*" + +delete_breakpoints +gdb_test "info tracepoints" ".*No tracepoints..*" "Third info tracepoints" + +gdb_target_cmd $gdbserver_protocol $gdbserver_gdbport +gdb_test "info tracepoints" ".*in main at.*" "Fourth info tracepoints"