mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-10 11:04:58 -06:00
tests/tcg: Factor out gdbstub test functions
Both the report() function as well as the initial gdbstub test sequence are copy-pasted into ~10 files with slight modifications. This indicates that they are indeed generic, so factor them out. While at it, add a few newlines to make the formatting closer to PEP-8. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> Message-Id: <20240129093410.3151-3-iii@linux.ibm.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
87ab270429
commit
4d48c1bc07
13 changed files with 98 additions and 395 deletions
|
@ -7,19 +7,7 @@ from __future__ import print_function
|
|||
#
|
||||
|
||||
import gdb
|
||||
import sys
|
||||
|
||||
failcount = 0
|
||||
|
||||
|
||||
def report(cond, msg):
|
||||
"""Report success/fail of test"""
|
||||
if cond:
|
||||
print("PASS: %s" % (msg))
|
||||
else:
|
||||
print("FAIL: %s" % (msg))
|
||||
global failcount
|
||||
failcount += 1
|
||||
from test_gdbstub import main, report
|
||||
|
||||
|
||||
def run_test():
|
||||
|
@ -42,31 +30,7 @@ def run_test():
|
|||
gdb.Breakpoint("_exit")
|
||||
gdb.execute("c")
|
||||
status = int(gdb.parse_and_eval("$r2"))
|
||||
report(status == 0, "status == 0");
|
||||
report(status == 0, "status == 0")
|
||||
|
||||
|
||||
#
|
||||
# This runs as the script it sourced (via -x, via run-test.py)
|
||||
#
|
||||
try:
|
||||
inferior = gdb.selected_inferior()
|
||||
arch = inferior.architecture()
|
||||
print("ATTACHED: %s" % arch.name())
|
||||
except (gdb.error, AttributeError):
|
||||
print("SKIPPING (not connected)", file=sys.stderr)
|
||||
exit(0)
|
||||
|
||||
if gdb.parse_and_eval("$pc") == 0:
|
||||
print("SKIP: PC not set")
|
||||
exit(0)
|
||||
|
||||
try:
|
||||
# Run the actual tests
|
||||
run_test()
|
||||
except (gdb.error):
|
||||
print("GDB Exception: %s" % (sys.exc_info()[0]))
|
||||
failcount += 1
|
||||
pass
|
||||
|
||||
print("All tests complete: %d failures" % failcount)
|
||||
exit(failcount)
|
||||
main(run_test)
|
||||
|
|
|
@ -3,20 +3,7 @@
|
|||
This runs as a sourced script (via -x, via run-test.py)."""
|
||||
from __future__ import print_function
|
||||
import gdb
|
||||
import sys
|
||||
|
||||
|
||||
n_failures = 0
|
||||
|
||||
|
||||
def report(cond, msg):
|
||||
"""Report success/fail of a test"""
|
||||
if cond:
|
||||
print("PASS: {}".format(msg))
|
||||
else:
|
||||
print("FAIL: {}".format(msg))
|
||||
global n_failures
|
||||
n_failures += 1
|
||||
from test_gdbstub import main, report
|
||||
|
||||
|
||||
def run_test():
|
||||
|
@ -35,26 +22,4 @@ def run_test():
|
|||
gdb.execute("si")
|
||||
|
||||
|
||||
def main():
|
||||
"""Prepare the environment and run through the tests"""
|
||||
try:
|
||||
inferior = gdb.selected_inferior()
|
||||
print("ATTACHED: {}".format(inferior.architecture().name()))
|
||||
except (gdb.error, AttributeError):
|
||||
print("SKIPPING (not connected)")
|
||||
exit(0)
|
||||
|
||||
if gdb.parse_and_eval('$pc') == 0:
|
||||
print("SKIP: PC not set")
|
||||
exit(0)
|
||||
|
||||
try:
|
||||
# Run the actual tests
|
||||
run_test()
|
||||
except gdb.error:
|
||||
report(False, "GDB Exception: {}".format(sys.exc_info()[0]))
|
||||
print("All tests complete: %d failures" % n_failures)
|
||||
exit(n_failures)
|
||||
|
||||
|
||||
main()
|
||||
main(run_test)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue