2011-12-08 Yao Qi * gdb.trace/tstart.exp: New. --- gdb/testsuite/gdb.trace/tstart.exp | 88 ++++++++++++++++++++++++++++++++++++ 1 files changed, 88 insertions(+), 0 deletions(-) create mode 100644 gdb/testsuite/gdb.trace/tstart.exp diff --git a/gdb/testsuite/gdb.trace/tstart.exp b/gdb/testsuite/gdb.trace/tstart.exp new file mode 100644 index 0000000..2690dad --- /dev/null +++ b/gdb/testsuite/gdb.trace/tstart.exp @@ -0,0 +1,88 @@ +# Copyright 2011 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 . + +load_lib "trace-support.exp"; + +set testfile "tstart" +set executable $testfile +set srcfile collection.c +set binfile $objdir/$subdir/$testfile +set expfile $testfile.exp + + +if [prepare_for_testing $expfile $executable $srcfile \ + {debug nowarnings}] { + untested "failed to prepare for trace tests" + return -1 +} + +# Verify that the sequence of commands "tstart tstop tstart" works well. + +proc test_tstart_tstop_tstart { } { + global executable + global pf_prefix + global hex + + set old_pf_prefix $pf_prefix + set pf_prefix "$pf_prefix tstart_tstop_tstart:" + + # Start with a fresh gdb. + clean_restart ${executable} + if ![runto_main] { + fail "Can't run to main" + set pf_prefix $old_pf_prefix + return -1 + } + + gdb_test "trace args_test_func" "Tracepoint \[0-9\] at $hex: file.*" + gdb_test_no_output "tstart" + + gdb_test "break end" "Breakpoint \[0-9\] at $hex: file.*" + gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" "continue to end" + + gdb_test_no_output "tstop" + + gdb_test_no_output "tstart" + + set pf_prefix $old_pf_prefix +} + +# Verify the sequence of commands "tstart tstart" works well. + +proc test_tstart_tstart { } { + global executable + global pf_prefix + global hex + + set old_pf_prefix $pf_prefix + set pf_prefix "$pf_prefix tstart_tstart:" + + # Start with a fresh gdb. + clean_restart ${executable} + if ![runto_main] { + fail "Can't run to main" + set pf_prefix $old_pf_prefix + return -1 + } + + gdb_test "trace args_test_func" "Tracepoint \[0-9\] at $hex: file.*" + gdb_test_no_output "tstart" + + gdb_test "tstart" "" "tstart again" "A trace is running already. Start a new run\\? \\(y or n\\) " "y" + +} + +test_tstart_tstop_tstart + +test_tstart_tstart \ No newline at end of file -- 1.7.0.4