This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Tighten regexp of lib/completion-support.exp:test_gdb_complete_tab_multiple


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6892d2e4df57160f7103fef0340ae3f55ac8b2b3

commit 6892d2e4df57160f7103fef0340ae3f55ac8b2b3
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Dec 13 16:38:50 2017 +0000

    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  <palves@redhat.com>
    
    	* lib/completion-support.exp (test_gdb_complete_tab_multiple):
    	Tighten regexp by matching with an anchor.

Diff:
---
 gdb/testsuite/ChangeLog                  | 5 +++++
 gdb/testsuite/lib/completion-support.exp | 5 ++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

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  <palves@redhat.com>
 
+	* lib/completion-support.exp (test_gdb_complete_tab_multiple):
+	Tighten regexp by matching with an anchor.
+
+2017-12-13  Pedro Alves  <palves@redhat.com>
+
 	* 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"
 		}
 	    }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]