From e019fd1d143061c703691b862f1e282be57b2983 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Wed, 30 Sep 2015 10:04:17 -0400 Subject: py-type.exp: Do not run tests if binary fails to build I noticed this while working on the test case. I believe it would make sense to skip running the tests if the binary failed to build. Although I would understand the opposite argument: if the binary does not build for some reason, we probably want to know about it, and some catastrophic failures in the tests might alarm us better than a timid "UNTESTED". gdb/testsuite/ChangeLog: * gdb.python/py-type.exp: Do not run tests if binaries fail to build. --- gdb/testsuite/ChangeLog | 5 ++++ gdb/testsuite/gdb.python/py-type.exp | 51 ++++++++++++++++++++---------------- 2 files changed, 33 insertions(+), 23 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d530c25335e..7e7e8f61b05 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-09-30 Simon Marchi + + * gdb.python/py-type.exp: Do not run tests if binaries fail to + build. + 2015-09-30 Markus Metzger * gdb.btrace/tsx.exp: Consider multiple correct outputs in the record diff --git a/gdb/testsuite/gdb.python/py-type.exp b/gdb/testsuite/gdb.python/py-type.exp index 58a2394da70..ce6eddeaffc 100644 --- a/gdb/testsuite/gdb.python/py-type.exp +++ b/gdb/testsuite/gdb.python/py-type.exp @@ -32,6 +32,8 @@ proc build_inferior {exefile lang} { untested "Couldn't compile ${srcfile} in $lang mode" return -1 } + + return 0 } # Restart GDB. @@ -241,35 +243,38 @@ proc test_template {} { } # Perform C Tests. -build_inferior "${binfile}" "c" -restart_gdb "${binfile}" +if { [build_inferior "${binfile}" "c"] == 0 } { + restart_gdb "${binfile}" -# Skip all tests if Python scripting is not enabled. -if { [skip_python_tests] } { continue } + # Skip all tests if Python scripting is not enabled. + if { [skip_python_tests] } { continue } -gdb_test "python print(gdb.lookup_type('char').array(1, 0))" \ - "char \\\[0\\\]" + gdb_test "python print(gdb.lookup_type('char').array(1, 0))" \ + "char \\\[0\\\]" -gdb_test "python print(gdb.lookup_type('char').array(1, -1))" \ - "Array length must not be negative.*" + gdb_test "python print(gdb.lookup_type('char').array(1, -1))" \ + "Array length must not be negative.*" -gdb_test "python print(gdb.lookup_type('int').optimized_out())" \ - "" + gdb_test "python print(gdb.lookup_type('int').optimized_out())" \ + "" -with_test_prefix "lang_c" { - runto_bp "break to inspect struct and array." - test_fields "c" - test_enums + with_test_prefix "lang_c" { + runto_bp "break to inspect struct and array." + test_fields "c" + test_enums + } } + # Perform C++ Tests. -build_inferior "${binfile}-cxx" "c++" -restart_gdb "${binfile}-cxx" -with_test_prefix "lang_cpp" { - runto_bp "break to inspect struct and array." - test_fields "c++" - test_base_class - test_range - test_template - test_enums +if { [build_inferior "${binfile}-cxx" "c++"] == 0 } { + restart_gdb "${binfile}-cxx" + with_test_prefix "lang_cpp" { + runto_bp "break to inspect struct and array." + test_fields "c++" + test_base_class + test_range + test_template + test_enums + } } -- cgit v1.2.1