From 79644f9c83b3cd992c16c6e1bd6c7a5fd49f24c0 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Fri, 27 Mar 2015 15:42:37 +0100 Subject: Issue #22117: Fix test_gdb for the new time.sleep() Use time.gmtime() instead of time.sleep(), because time.sleep() is no more declared with METH_VARARGS but with METH_O. time.gmtime() is still declared with METH_VARARGS and so it is called with PyCFunction_Call() which is the target of the test_gdb unit test. --- Lib/test/test_gdb.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Lib/test/test_gdb.py b/Lib/test/test_gdb.py index c57875c..0322677 100644 --- a/Lib/test/test_gdb.py +++ b/Lib/test/test_gdb.py @@ -802,25 +802,27 @@ id(42) "Python was compiled without thread support") def test_pycfunction(self): 'Verify that "py-bt" displays invocations of PyCFunction instances' - cmd = ('from time import sleep\n' + # Tested function must not be defined with METH_NOARGS or METH_O, + # otherwise call_function() doesn't call PyCFunction_Call() + cmd = ('from time import gmtime\n' 'def foo():\n' - ' sleep(1)\n' + ' gmtime(1)\n' 'def bar():\n' ' foo()\n' 'bar()\n') # Verify with "py-bt": gdb_output = self.get_stack_trace(cmd, - breakpoint='time_sleep', + breakpoint='time_gmtime', cmds_after_breakpoint=['bt', 'py-bt'], ) - self.assertIn('