Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <palves@redhat.com>
To: Luis Machado <lgustavo@codesourcery.com>, gdb-patches@sourceware.org
Subject: Re: [PATCH] Don't handle timeout inside gdb_test_multiple
Date: Fri, 02 Dec 2016 11:04:00 -0000	[thread overview]
Message-ID: <eb4345fd-68d2-e0d0-5e2a-dbe53ba2c9c7@redhat.com> (raw)
In-Reply-To: <1480640845-3564-1-git-send-email-lgustavo@codesourcery.com>

On 12/02/2016 01:07 AM, Luis Machado wrote:
> This fixes a few cases where the testcase is explicitly handling timeouts
> inside gdb_test_multiple when it is not necessary.
> 
> It also converts two gdb_test_multiple calls to gdb_test_no_output calls
> (also removing the timeout handling).
> 
> gdb/testsuite/ChangeLog:
> 
> 2016-12-01  Luis Machado  <lgustavo@codesourcery.com>
> 
> 	* gdb.base/maint.exp: Remove timeout handling for gdb_test_multiple.
> 	* gdb.cp/gdb2495.exp: Likewise and convert gdb_test_multiple into
> 	gdb_test_no_output for a couple of cases.
> 	* gdb.cp/ovldbreak.exp: Remove timeout handling for gdb_test_multiple.
> ---
>  gdb/testsuite/gdb.base/maint.exp   |  9 ---------
>  gdb/testsuite/gdb.cp/gdb2495.exp   | 10 ++--------
>  gdb/testsuite/gdb.cp/ovldbreak.exp |  4 ----
>  3 files changed, 2 insertions(+), 21 deletions(-)
> 
> diff --git a/gdb/testsuite/gdb.base/maint.exp b/gdb/testsuite/gdb.base/maint.exp
> index b07b370..17c606b 100644
> --- a/gdb/testsuite/gdb.base/maint.exp
> +++ b/gdb/testsuite/gdb.base/maint.exp
> @@ -297,9 +297,6 @@ gdb_test_multiple "maint print msymbols msymbols_output2 ${testfile}" "maint pri
>  		    -re ".*$gdb_prompt $" {
>  		        fail "maint print msymbols"
>  		    }
> -		    timeout {
> -		        fail "(timeout) maint print msymbols"
> -		    }

This was:

	    	gdb_test_multiple "shell grep factorial msymbols_output2" "maint print msymbols" {
		    -re "\\\[ *$decimal\\\] \[tT\]\[ \t\]+$hex \\.?factorial.*$gdb_prompt $" {
		    	pass "maint print msymbols"
		    }
		    -re ".*$gdb_prompt $" {
		        fail "maint print msymbols"
		    }
		    timeout {
		        fail "(timeout) maint print msymbols"
		    }

gdb_test_multiple has an internal FAIL for "$gdb_prompt $" too.  So this
could be reduced to:

	    	gdb_test_multiple "shell grep factorial msymbols_output2" "maint print msymbols" {
		    -re "\\\[ *$decimal\\\] \[tT\]\[ \t\]+$hex \\.?factorial.*$gdb_prompt $" {
		    	pass "maint print msymbols"
		    }
                }

which can then be reduced to:

	    	gdb_test "shell grep factorial msymbols_output2" \
		    "\\\[ *$decimal\\\] \[tT\]\[ \t\]+$hex \\.?factorial.*" \
                    "maint print msymbols"


Looks like a good chunk of the file could be similarly simplified.

> --- a/gdb/testsuite/gdb.cp/ovldbreak.exp
> +++ b/gdb/testsuite/gdb.cp/ovldbreak.exp
> @@ -58,10 +58,6 @@ proc take_gdb_out_of_choice_menu {} {
>      gdb_test_multiple " " " " {
>          -re ".*$gdb_prompt $" {
>          }
> -        timeout {
> -            perror "could not resynchronize to command prompt (timeout)"
> -            continue
> -        }

Looking at both the description and callers of this procedure, I'd think
that the perror here was intended to abort the testcase instead of getting
into a potentially long cascading timeout sequence.

Thanks,
Pedro Alves


  parent reply	other threads:[~2016-12-02 11:04 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-02  1:07 Luis Machado
2016-12-02  2:42 ` Joel Brobecker
2016-12-02  4:09   ` Luis Machado
2016-12-02 11:04 ` Pedro Alves [this message]
2016-12-02 15:25   ` Luis Machado
2016-12-02 15:42     ` Pedro Alves

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=eb4345fd-68d2-e0d0-5e2a-dbe53ba2c9c7@redhat.com \
    --to=palves@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=lgustavo@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox