diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2013-11-24 13:58:17 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2013-11-24 13:58:17 (GMT) |
commit | a8892a1aa593d9e8acfbce469188bc4119b05244 (patch) | |
tree | e434fc5080af667074a74a69618d59a7893fa6da | |
parent | f8471862d6514714790f4b9a0a51f3b7673de20c (diff) | |
download | cpython-a8892a1aa593d9e8acfbce469188bc4119b05244.zip cpython-a8892a1aa593d9e8acfbce469188bc4119b05244.tar.gz cpython-a8892a1aa593d9e8acfbce469188bc4119b05244.tar.bz2 |
Issue #19743: fix test_gdb on some optimized Python builds
-rw-r--r-- | Lib/test/test_gdb.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Lib/test/test_gdb.py b/Lib/test/test_gdb.py index 981f1b1..846422b 100644 --- a/Lib/test/test_gdb.py +++ b/Lib/test/test_gdb.py @@ -141,7 +141,7 @@ class DebuggerTests(unittest.TestCase): args += [script] # print args - # print ' '.join(args) + # print (' '.join(args)) # Use "args" to invoke gdb, capturing stdout, stderr: out, err = run_gdb(*args, PYTHONHASHSEED='0') @@ -186,6 +186,11 @@ class DebuggerTests(unittest.TestCase): # # For a nested structure, the first time we hit the breakpoint will # give us the top-level structure + + # NOTE: avoid decoding too much of the traceback as some + # undecodable characters may lurk there in optimized mode + # (issue #19743). + cmds_after_breakpoint = cmds_after_breakpoint or ["backtrace 1"] gdb_output = self.get_stack_trace(source, breakpoint=BREAKPOINT_FN, cmds_after_breakpoint=cmds_after_breakpoint, import_site=import_site) @@ -216,11 +221,10 @@ class PrettyPrintTests(DebuggerTests): gdb_output = self.get_stack_trace('id(42)') self.assertTrue(BREAKPOINT_FN in gdb_output) - def assertGdbRepr(self, val, exp_repr=None, cmds_after_breakpoint=None): + def assertGdbRepr(self, val, exp_repr=None): # Ensure that gdb's rendering of the value in a debugged process # matches repr(value) in this process: - gdb_repr, gdb_output = self.get_gdb_repr('id(' + ascii(val) + ')', - cmds_after_breakpoint) + gdb_repr, gdb_output = self.get_gdb_repr('id(' + ascii(val) + ')') if not exp_repr: exp_repr = repr(val) self.assertEqual(gdb_repr, exp_repr, |