This is the mail archive of the gdb-patches@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] |
So, the design of the tests suite was to have portable names that can survive prefix changes. In the gdb test suite, I see: PASS: gdb.base/break-fun-addr.exp: /home/mrs/work/binutils-machine/gdb/testsuite/outputs/gdb.base/break-fun-addr/break-fun-addr1: break *main PASS: gdb.base/break-fun-addr.exp: /home/mrs/work/binutils-machine/gdb/testsuite/outputs/gdb.base/break-fun-addr/break-fun-addr1: run to breakpoint at *main PASS: gdb.base/break-fun-addr.exp: /home/mrs/work/binutils-machine/gdb/testsuite/outputs/gdb.base/break-fun-addr/break-fun-addr1: p $pc == main FAIL: gdb.base/break-fun-addr.exp: /home/mrs/work/binutils-machine/gdb/testsuite/outputs/gdb.base/break-fun-addr/break-fun-addr2: run to breakpoint at *main PASS: gdb.base/break-fun-addr.exp: /home/mrs/work/binutils-machine/gdb/testsuite/outputs/gdb.base/break-fun-addr/break-fun-addr2: p $pc == main and” PASS: gdb.python/py-completion.exp: source /home/mrs/work/binutils-machine/gdb/testsuite/../../../binutils/gdb/testsuite/gdb.python/py-completion.py PASS: gdb.python/py-completion.exp: source /home/mrs/work/binutils-machine/gdb/testsuite/../../../binutils/gdb/testsuite/gdb.python/py-completion.py which are the only violations of the general rule I see. I’m doing tool validating, and noticed the account name that did the test in the PASS:/FAIL: lines. This causes failures when comparing across different testing accounts. gcc, the reset of binutils and newlib don’t have this problem, gdb is the last tool to do this. So, for the first group, this: diff --git a/gdb/testsuite/gdb.base/break-fun-addr.exp b/gdb/testsuite/gdb.base/break-fun-addr.exp index e8bed3f..96043ef 100644 --- a/gdb/testsuite/gdb.base/break-fun-addr.exp +++ b/gdb/testsuite/gdb.base/break-fun-addr.exp @@ -46,7 +46,7 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile1}" "${binfile1}" executable {d clean_restart ${binfile1} -with_test_prefix "${binfile1}" { +with_test_prefix "${subdir}/${gdb_test_file_name}/${testfile1}" { gdb_test "break *main" \ "Breakpoint.*at.* file .*$srcfile1, line .*" \ @@ -73,7 +73,7 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile2}" "${binfile2}" executable {d # start a new debugging session with a different executable. gdb_load ${binfile2} -with_test_prefix "${binfile2}" { +with_test_prefix "${subdir}/${gdb_test_file_name}/${testfile2}" { gdb_run_cmd gdb_test "” \ should fix it. This avoids the parallel names and the prefix. The test case names now look like: PASS: gdb.base/break-fun-addr.exp: gdb.base/break-fun-addr/break-fun-addr1: break *main PASS: gdb.base/break-fun-addr.exp: gdb.base/break-fun-addr/break-fun-addr1: run to breakpoint at *main PASS: gdb.base/break-fun-addr.exp: gdb.base/break-fun-addr/break-fun-addr1: p $pc == main PASS: gdb.base/break-fun-addr.exp: gdb.base/break-fun-addr/break-fun-addr2: p $pc == main which is preferred. For the second one, this: diff --git a/gdb/testsuite/gdb.python/py-completion.exp b/gdb/testsuite/gdb.python/py-completion.exp index 900d6f5..d8376d4 100644 --- a/gdb/testsuite/gdb.python/py-completion.exp +++ b/gdb/testsuite/gdb.python/py-completion.exp @@ -23,7 +23,7 @@ gdb_start # Skip all tests if Python scripting is not enabled. if { [skip_python_tests] } { continue } -gdb_test_no_output "source ${srcdir}/${subdir}/${testfile}.py" +gdb_test_no_output "source ${srcdir}/${subdir}/${testfile}.py" "source ${subdir}/${testfile}.py" # Create a temporary directory set testdir "[standard_output_file "py-completion-testdir"]/" @@ -73,7 +73,7 @@ gdb_test_multiple "" "completefilecommandcond completion" { # with the expected output of the below tests in a buggy gdb. gdb_exit gdb_start -gdb_test_no_output "source ${srcdir}/${subdir}/${testfile}.py" +gdb_test_no_output "source ${srcdir}/${subdir}/${testfile}.py" "source ${subdir}/${testfile}.py" gdb_test_sequence "complete completel" \ "list all completions of 'complete completel'” { produces: PASS: gdb.python/py-completion.exp: source gdb.python/py-completion.py PASS: gdb.python/py-completion.exp: completefileinit completion PASS: gdb.python/py-completion.exp: discard #1 PASS: gdb.python/py-completion.exp: completefilemethod completion PASS: gdb.python/py-completion.exp: discard #2 PASS: gdb.python/py-completion.exp: completefilecommandcond completion PASS: gdb.python/py-completion.exp: source gdb.python/py-completion.py PASS: gdb.python/py-completion.exp: list all completions of 'complete completel' PASS: gdb.python/py-completion.exp: discard #3 PASS: gdb.python/py-completion.exp: list all completions of 'complete completelimit1 c' PASS: gdb.python/py-completion.exp: discard #4 PASS: gdb.python/py-completion.exp: tab-complete 'completelimit1 c' PASS: gdb.python/py-completion.exp: discard #5 PASS: gdb.python/py-completion.exp: list all completions of 'complete completelimit2 c’ Ok? The inline text won’t make it though patch, so, here is the attached version that will.
Attachment:
gdb-ts-prefix.diffs.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |