This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa/testsuite/mi] Recognize a few incorrect outputs
- To: Daniel Jacobowitz <drow at mvista dot com>
- Subject: Re: [rfa/testsuite/mi] Recognize a few incorrect outputs
- From: Fernando Nasser <fnasser at redhat dot com>
- Date: Mon, 01 Oct 2001 10:23:05 -0400
- CC: Andrew Cagney <ac131313 at cygnus dot com>, fnasser at cygnus dot com, gdb-patches at sources dot redhat dot com
- Organization: Red Hat Canada
- References: <20010928151616.A14106@nevyn.them.org> <3BB4DEBB.1020906@cygnus.com> <20010928185435.A24623@nevyn.them.org>
The patch is fine.
Just to answer your previous question regarding Andrew's suggestion:
The text that identify the tests must be the same on both fail and pass.
However, a <reason> for the fail is allowed between parenthesis at the
end of ther string. The test comparison scripts are supposed to ignore
that part for test identification purposes.
The most used example of the aboce is the string "(timeout)".
Thanks for the patch. And thanks Andrew for the help with this one.
Regards,
Fernando
Daniel Jacobowitz wrote:
>
> On Fri, Sep 28, 2001 at 04:34:03PM -0400, Andrew Cagney wrote:
> > > <gripe>
> > > A lot of GDB tests seem to be written with only pass and timeout
> > > alternatives, or only with overly-specialized fails. The hypocrite-alert
> > > readers of this message will note that I'm guilty of the same thing; this is
> > > Just Enough to make them catch a few errors I could think of, not enough to
> > > recognize completely wrong output. Someday, someone more motivated than I
> > > should clean this up.
> > > </gripe>
> >
> > For the MI, this is a pretty obvious fix. I've been doing the same
> > thing my self (when I noticed it). One suggestion, can you make that
> > fail expression less strict so that it picks. Something like:
> >
> > <correct-output> (gdb) <more-output> (gdb)
> > pass
> >
> > .* (gdb) .* (gdb)
> > fail
> >
> > timeout
> > fail
> >
> > alternatively (hmm, better?), keep the expression as you have it but add
> > a comment in paren vis:
> >
> > fail "continue to incr_a (compiler bug info is wrong)"
>
> Is this about what you had in mind?
>
> --
> Daniel Jacobowitz Carnegie Mellon University
> MontaVista Software Debian GNU/Linux Developer
>
> 2001-09-28 Daniel Jacobowitz <drow@mvista.com>
>
> * gdb.mi/mi-var-display.exp (continue to incr_a): Recognize
> some incorrect output instead of timing out.
> * gdb.mi/mi-var-display.exp (continue to incr_a): Likewise.
>
> Index: gdb.mi/mi-var-display.exp
> ===================================================================
> RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-var-display.exp,v
> retrieving revision 1.5
> diff -u -r1.5 mi-var-display.exp
> --- mi-var-display.exp 2001/08/19 01:23:43 1.5
> +++ mi-var-display.exp 2001/09/28 22:52:37
> @@ -591,6 +591,12 @@
> -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=\"breakpoint-hit\",bkptno=\"3\",thread-id=\"\[01\]\",frame=\{addr=\"$hex\",func=\"incr_a\",args=\\\[\{name=\"a\",value=\"2\.*\"\}\\\],file=\".*var-cmd.c\",line=\"85\"\}\r\n$mi_gdb_prompt$" {
> pass "continue to incr_a"
> }
> + -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=\"breakpoint-hit\",bkptno=\"3\",thread-id=\"\[01\]\",frame=\{addr=\"$hex\",func=\"incr_a\",args=\\\[\{name=\"a\",value=\"\.*\"\}\\\],file=\".*var-cmd.c\",line=\"8\[345\]\"\}\r\n$mi_gdb_prompt$" {
> + fail "continue to incr_a (compiler debug info incorrect)"
> + }
> + -re "\\^running\r\n${mi_gdb_prompt}.*\r\n$mi_gdb_prompt$" {
> + fail "continue to incr_a (unknown output)"
> + }
> timeout {
> fail "continue to incr_a (timeout)"
> }
> Index: gdb.mi/mi0-var-display.exp
> ===================================================================
> RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi0-var-display.exp,v
> retrieving revision 1.4
> diff -u -r1.4 mi0-var-display.exp
> --- mi0-var-display.exp 2001/08/19 01:23:43 1.4
> +++ mi0-var-display.exp 2001/09/28 22:52:37
> @@ -591,6 +591,12 @@
> -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=\"breakpoint-hit\",bkptno=\"3\",thread-id=\"\[01\]\",frame=\{addr=\"$hex\",func=\"incr_a\",args=\{\{name=\"a\",value=\"2\.*\"\}\},file=\".*var-cmd.c\",line=\"85\"\}\r\n$mi_gdb_prompt$" {
> pass "continue to incr_a"
> }
> + -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=\"breakpoint-hit\",bkptno=\"3\",thread-id=\"\[01\]\",frame=\{addr=\"$hex\",func=\"incr_a\",args=\{\{name=\"a\",value=\".*\"\}\},file=\".*var-cmd.c\",line=\"8\[345\]\"\}\r\n$mi_gdb_prompt$" {
> + fail "continue to incr_a (compiler debug info incorrect)"
> + }
> + -re "\\^running\r\n${mi_gdb_prompt}.*\r\n$mi_gdb_prompt$" {
> + fail "continue to incr_a (unknown output)"
> + }
> timeout {
> fail "continue to incr_a (timeout)"
> }
--
Fernando Nasser
Red Hat Canada Ltd. E-Mail: fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9