Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(720)

Unified Diff: gdb/testsuite/gdb.trace/disconnected-tracing.exp

Issue 124383005: GDB 7.6.50 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@upstream
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gdb/testsuite/gdb.trace/disconnected-tracing.c ('k') | gdb/testsuite/gdb.trace/entry-values.c » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gdb/testsuite/gdb.trace/disconnected-tracing.exp
diff --git a/gdb/testsuite/gdb.trace/disconnected-tracing.exp b/gdb/testsuite/gdb.trace/disconnected-tracing.exp
index 79194f1b555c50662e8252a90d6663999513d0a6..2f443243fb4729b37adb7acde5998dbacf16be42 100644
--- a/gdb/testsuite/gdb.trace/disconnected-tracing.exp
+++ b/gdb/testsuite/gdb.trace/disconnected-tracing.exp
@@ -1,4 +1,4 @@
-# Copyright 2012 Free Software Foundation, Inc.
+# Copyright 2012-2013 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
@@ -15,7 +15,7 @@
# Test of disconnected-tracing.
-load_lib "trace-support.exp";
+load_lib "trace-support.exp"
standard_testfile
set executable $testfile
@@ -40,35 +40,113 @@ if ![runto_main] {
if ![gdb_target_supports_trace] {
unsupported "target does not support trace"
- return -1;
+ return -1
}
-delete_breakpoints
-gdb_test_no_output "set confirm off"
-gdb_test_no_output "set disconnected-tracing on"
-gdb_test "trace main" ".*"
-gdb_test_no_output "tstart"
+# Disconnect in tracing.
+
+proc disconnected_tracing { } {
+ with_test_prefix "trace" {
+ global executable
+ global decimal
+ global srcfile
+
+ # Start with a fresh gdb.
+ clean_restart ${executable}
+ if ![runto_main] {
+ fail "Can't run to main"
+ return -1
+ }
+
+ gdb_test_no_output "set confirm off"
+ gdb_test_no_output "set disconnected-tracing on"
+ gdb_test "trace start" ".*"
+ gdb_trace_setactions "collect on tracepoint 2" "2" \
+ "collect foo" "^$"
+ gdb_test "break end" "Breakpoint ${decimal} at .*"
+
+ gdb_test_no_output "tstart"
+
+ gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*"
+ gdb_test_no_output "tstop"
+
+ gdb_test "info tracepoints" ".*in start at.*" \
+ "first info tracepoints"
+
+ gdb_test "disconnect" "Ending remote debugging\\." "first disconnect"
+ if { [gdb_reconnect] == 0 } {
+ pass "first reconnect after unload"
+ } else {
+ fail "first reconnect after unload"
+ return 0
+ }
+ gdb_test "info tracepoints" ".*in start at.*" \
+ "second info tracepoints"
-gdb_test "info tracepoints" ".*in main at.*" "first info tracepoints"
+ delete_breakpoints
+ gdb_test "info tracepoints" ".*No tracepoints..*" \
+ "third info tracepoints"
-gdb_test "disconnect" "Ending remote debugging\\." "first disconnect"
-if { [gdb_reconnect] == 0 } {
- pass "first reconnect after unload"
-} else {
- fail "first reconnect after unload"
- return 0
+ gdb_test "disconnect" "Ending remote debugging\\." "second disconnect"
+ if { [gdb_reconnect] == 0 } {
+ pass "second reconnect after unload"
+ } else {
+ fail "second reconnect after unload"
+ return 0
+ }
+ gdb_test "tstatus"
+ gdb_test "info tracepoints" \
+ "Num Type\[ \]+Disp Enb Address\[ \]+What.*
+\[0-9\]+\[\t \]+tracepoint keep y.* in start at .*$srcfile:\[0-9\]+.
+\[\t \]+tracepoint already hit 1 time.
+\[\t \]+trace buffer usage ${decimal} bytes.
+\[\t \]+collect foo.*" \
+ "fourth info tracepoints"
+ }
}
-gdb_test "info tracepoints" ".*in main at.*" "second info tracepoints"
-delete_breakpoints
-gdb_test "info tracepoints" ".*No tracepoints..*" "third info tracepoints"
+disconnected_tracing
-gdb_test "disconnect" "Ending remote debugging\\." "second disconnect"
-if { [gdb_reconnect] == 0 } {
- pass "second reconnect after unload"
-} else {
- fail "second reconnect after unload"
- return 0
+# Disconnected in tfind
+
+proc disconnected_tfind { } {
+ with_test_prefix "tfind" {
+ global executable
+ global decimal
+
+ # Start with a fresh gdb.
+ clean_restart ${executable}
+ if ![runto_main] {
+ fail "Can't run to main"
+ return -1
+ }
+
+ gdb_test_no_output "set confirm off"
+ gdb_test_no_output "set disconnected-tracing on"
+ gdb_test "trace start" ".*"
+ gdb_test_no_output "tstart"
+
+ gdb_test "break end" "Breakpoint ${decimal} at .*"
+ gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*"
+ gdb_test_no_output "tstop"
+
+ gdb_test "tfind" "Found trace frame 0, tracepoint .*" "tfind frame 0"
+ gdb_test "p \$trace_frame" ".*\\\$${decimal} = 0.*" \
+ "p \$trace_frame before disconnected"
+ gdb_test "p \$tracepoint" ".*\\\$${decimal} = 2.*" \
+ "p \$tracepoint before disconnected"
+
+ gdb_test "disconnect" "Ending remote debugging\\." "first disconnect"
+
+ gdb_test "p \$trace_frame" ".*\\\$${decimal} = -1.*"
+ gdb_test "p \$tracepoint" ".*\\\$${decimal} = -1.*"
+ gdb_test "p \$trace_line" ".*\\\$${decimal} = -1.*"
+ gdb_test "p \$trace_file" ".*\\\$${decimal} = void.*"
+ gdb_test "p \$trace_func" ".*\\\$${decimal} = void.*"
+ }
}
-gdb_test "info tracepoints" ".*in main at.*" "fourth info tracepoints"
+disconnected_tfind
+
+# Reconnect for a clean gdbserver shutdown.
+gdb_reconnect
« no previous file with comments | « gdb/testsuite/gdb.trace/disconnected-tracing.c ('k') | gdb/testsuite/gdb.trace/entry-values.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698