Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Fred Fish <fnf@fred.ninemoons.com>
To: gdb-patches@sources.redhat.com
Cc: fnf@redhat.com
Subject: [RFA] Fix testsuite completion.exp test for builddir==srcdir
Date: Wed, 01 May 2002 07:48:00 -0000	[thread overview]
Message-ID: <200205011448.g41EmWm27920@fred.ninemoons.com> (raw)

If you configure and build in the source tree, the completion.exp
test produces:

  FAIL: gdb.base/completion.exp: (timeout) complete 'file ./Make'
  ERROR: Got interactive prompt.
  UNRESOLVED: gdb.base/completion.exp: cd to ${srcdir}
  FAIL: gdb.base/completion.exp: (timeout) complete 'file ./gdb.base/compl'
  FAIL: gdb.base/completion.exp: (timeout) complete 'info func mar'
  FAIL: gdb.base/completion.exp: (timeout) complete 'set follow-fork-mode'

due to having more than one file that completes "./Make".  This patch
fixes that.

On a related note, it is probably a bad idea to have these tests depend
upon details of the source tree like this.  A better long term solution
would be to create a temporary directory, populate it with some known
names, and do completions there.  I should probably add this comment to
the completion.exp header if this patch is approved.

-Fred

2002-05-01  Fred Fish  <fnf@redhat.com>

	* gdb.base/completion.exp: Handle completions of "./Make" for
	more than one completion possibility, as is the case when we
	build and test in the source tree.

Index: gdb.base/completion.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/completion.exp,v
retrieving revision 1.11
diff -c -p -r1.11 completion.exp
*** gdb.base/completion.exp	13 Jan 2002 22:13:06 -0000	1.11
--- gdb.base/completion.exp	1 May 2002 14:34:15 -0000
*************** gdb_expect  {
*** 631,642 ****
  #
  # So, we avoid long lines.  We `cd' to ${objdir} first, and then do
  # the completion relative to the current directory.
  
  gdb_test "cd ${objdir}" "Working directory ${objdir}.*" "cd to \${objdir}"
  send_gdb "file ./Make\t"
  sleep 1
  gdb_expect  {
!         -re "file ./Makefile.*$"\
              { send_gdb "\n"
                gdb_expect {
                        -re "\r\nA program is being debugged already\\.  Kill it\\? \\(y or n\\) $"\
--- 631,645 ----
  #
  # So, we avoid long lines.  We `cd' to ${objdir} first, and then do
  # the completion relative to the current directory.
+ #
+ # Note that if we are building in the source tree, then there will be
+ # more than one completion for ./Make, so we need to handle that also.
  
  gdb_test "cd ${objdir}" "Working directory ${objdir}.*" "cd to \${objdir}"
  send_gdb "file ./Make\t"
  sleep 1
  gdb_expect  {
!         -re "^file ./Make(\\\x07|)file.*$"\
              { send_gdb "\n"
                gdb_expect {
                        -re "\r\nA program is being debugged already\\.  Kill it\\? \\(y or n\\) $"\


             reply	other threads:[~2002-05-01 14:48 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-01  7:48 Fred Fish [this message]
2002-05-01  7:57 ` Fernando Nasser
2002-05-01 10:48 ` Elena Zannoni
2002-05-01 11:45   ` Fred Fish

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=200205011448.g41EmWm27920@fred.ninemoons.com \
    --to=fnf@fred.ninemoons.com \
    --cc=fnf@redhat.com \
    --cc=gdb-patches@sources.redhat.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