From: Pedro Alves Date: Wed, 13 Dec 2017 16:38:50 +0000 (+0000) Subject: Tighten regexp of lib/completion-support.exp:test_gdb_complete_tab_multiple X-Git-Tag: gdb-8.1-release~161 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6892d2e4df57160f7103fef0340ae3f55ac8b2b3;p=external%2Fbinutils.git Tighten regexp of lib/completion-support.exp:test_gdb_complete_tab_multiple While writing the tests included in the previous commit, I noticed that test_gdb_complete_tab_multiple would not FAIL if GDB happens to show more completions than expected before the expected list. E.g., with something like this, expecting "p foo" to complete to "foo2" and "foo3": test_gdb_complete_tab_multiple "p foo" "" { "foo2" "foo3" } and then if foo actually completes to: (gdb) p foo[TAB] foo1 foo2 foo3 ^^^^ we'd still PASS. (Note the spurious "foo1" above.) This tightens the regexp with a beginning anchor thus making the completions above cause a FAIL. Other similar functions in completion-support.exp already do something like this; I had just missed this one originally. Thankfully, this did not expose any problems in the gdb.linespec/ tests. Phew. gdb/testsuite/ChangeLog: 2017-12-13 Pedro Alves * lib/completion-support.exp (test_gdb_complete_tab_multiple): Tighten regexp by matching with an anchor. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 450ca35..1a33fc2 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2017-12-13 Pedro Alves + * lib/completion-support.exp (test_gdb_complete_tab_multiple): + Tighten regexp by matching with an anchor. + +2017-12-13 Pedro Alves + * gdb.cp/cpcompletion.exp: Load completion-support.exp. ("expression with namespace"): New set of tests. * gdb.cp/pr9594.cc (Test_NS::foo, Test_NS::bar) diff --git a/gdb/testsuite/lib/completion-support.exp b/gdb/testsuite/lib/completion-support.exp index fe5b16a..bebf90e 100644 --- a/gdb/testsuite/lib/completion-support.exp +++ b/gdb/testsuite/lib/completion-support.exp @@ -139,9 +139,12 @@ proc test_gdb_complete_tab_multiple { input_line add_completed_line \ # extra tab to show the matches list. if {$add_completed_line != ""} { send_gdb "\t" + set maybe_bell ${completion::bell_re} + } else { + set maybe_bell "" } gdb_test_multiple "" "$test (second tab)" { - -re "$expected_re\r\n$gdb_prompt $input_line_re$add_completed_line_re$" { + -re "^${maybe_bell}\r\n$expected_re\r\n$gdb_prompt $input_line_re$add_completed_line_re$" { pass "$test" } }