[PATCH 1/3] Test of breakpoint output for dprintf

Yao Qi
2012-12-12T04:13:13Z

Hi,
We don't have a test to check the output of 'info breakpoints' and fields
in "=breakpoint-created" notificiation, which are all related to
'print_one_breakpoint_location'. This patch adds tests for dprintf.
Is it OK?

gdb/testsuite:

2012-12-12 Yao Qi <yao@codesourcery.com>

* gdb.base/dprintf.exp: Check the output of 'info breakpoints' for
dprintf.
* gdb.mi/mi-breakpoint-changed.exp (test_insert_delete_modify):
Check the fields in "=breakpoint-created" for dprintf.
---
gdb/testsuite/gdb.base/dprintf.exp | 13 +++++++++++++
gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp | 2 +-
2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/gdb/testsuite/gdb.base/dprintf.exp b/gdb/testsuite/gdb.base/dprintf.exp
index bd0615b..979ceaf 100644
--- a/gdb/testsuite/gdb.base/dprintf.exp
+++ b/gdb/testsuite/gdb.base/dprintf.exp
@@ -43,6 +43,13 @@ gdb_test "dprintf foo,\"At foo entry\\n\"" \
gdb_test "dprintf $dp_location1,\"arg=%d, g=%d\\n\", arg, g" \
"Dprintf .*"

+gdb_test "info breakpoints" "3\[\t \]+dprintf .*
+\[\t \]+printf \"At foo entry\\\\n\".
+\[\t \]+continue.
+4\[\t \]+dprintf .*
+\[\t \]+printf \"arg=%d, g=%d\\\\n\", arg, g.
+\[\t \]+continue." "dprintf info 1"
+
gdb_test "break $bp_location1" \
"Breakpoint .*"

@@ -107,6 +114,12 @@ if $target_can_dprintf {

gdb_test "continue" "Breakpoint \[0-9\]+, foo .*" "2nd dprintf, agent"

+ gdb_test "info breakpoints" "3\[\t \]+dprintf .*
+\[\t \]+breakpoint already hit 2 times.
+\[\t \]+agent-printf \"At foo entry\\\\n\".
+4\[\t \]+dprintf .*
+\[\t \]+breakpoint already hit 2 times.
+\[\t \]+agent-printf \"arg=%d, g=%d\\\\n\", arg, g.*" "info dprintf 2"
}

gdb_test "set dprintf-style foobar" "Undefined item: \"foobar\"." \
diff --git a/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp b/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp
index ec10032..df6101c 100644
--- a/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp
+++ b/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp
@@ -96,7 +96,7 @@ proc test_insert_delete_modify { } {
$test
set test "dprintf marker, \"arg\" \""
mi_gdb_test $test \
- {.*=breakpoint-created,bkpt=\{number="6",type="dprintf".*\}.*\n\^done} \
+ {.*=breakpoint-created,bkpt=\{number="6",type="dprintf".*,script=\{\"printf \\\\\"arg\\\\\" \\\\\"\",\"continue\"\}.*\}\r\n\^done} \
$test

# 2. when modifying condition
--
1.7.7.6