ACIL FM
Dark
Refresh
Current DIR:
/opt/alt/python313/lib64/python3.13/test/test_gdb
/
opt
alt
python313
lib64
python3.13
test
test_gdb
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
__pycache__
-
chmod
Open
Rename
Delete
gdb_sample.py
156 B
chmod
View
DL
Edit
Rename
Delete
test_backtrace.py
4.91 MB
chmod
View
DL
Edit
Rename
Delete
test_cfunction.py
2.85 MB
chmod
View
DL
Edit
Rename
Delete
test_cfunction_full.py
1003 B
chmod
View
DL
Edit
Rename
Delete
test_misc.py
7.59 MB
chmod
View
DL
Edit
Rename
Delete
test_pretty_print.py
17.36 MB
chmod
View
DL
Edit
Rename
Delete
util.py
10.28 MB
chmod
View
DL
Edit
Rename
Delete
__init__.py
1 MB
chmod
View
DL
Edit
Rename
Delete
Edit file: /opt/alt/python313/lib64/python3.13/test/test_gdb/test_cfunction.py
import textwrap import unittest from test import support from .util import setup_module, DebuggerTests def setUpModule(): setup_module() @unittest.skipIf(support.python_is_optimized(), "Python was compiled with optimizations") @support.requires_resource('cpu') class CFunctionTests(DebuggerTests): def check(self, func_name, cmd): # Verify with "py-bt": gdb_output = self.get_stack_trace( cmd, breakpoint=func_name, cmds_after_breakpoint=['bt', 'py-bt'], # bpo-45207: Ignore 'Function "meth_varargs" not # defined.' message in stderr. ignore_stderr=True, ) self.assertIn(f'<built-in method {func_name}', gdb_output) # Some older versions of gdb will fail with # "Cannot find new threads: generic error" # unless we add LD_PRELOAD=PATH-TO-libpthread.so.1 as a workaround # # gdb will also generate many erroneous errors such as: # Function "meth_varargs" not defined. # This is because we are calling functions from an "external" module # (_testcapimodule) rather than compiled-in functions. It seems difficult # to suppress these. See also the comment in DebuggerTests.get_stack_trace def check_pycfunction(self, func_name, args): 'Verify that "py-bt" displays invocations of PyCFunction instances' if support.verbose: print() # Various optimizations multiply the code paths by which these are # called, so test a variety of calling conventions. for obj in ( '_testcapi', '_testcapi.MethClass', '_testcapi.MethClass()', '_testcapi.MethStatic()', # XXX: bound methods don't yet give nice tracebacks # '_testcapi.MethInstance()', ): with self.subTest(f'{obj}.{func_name}'): call = f'{obj}.{func_name}({args})' cmd = textwrap.dedent(f''' import _testcapi def foo(): {call} def bar(): foo() bar() ''') if support.verbose: print(f' test call: {call}', flush=True) self.check(func_name, cmd) def test_pycfunction_noargs(self): self.check_pycfunction('meth_noargs', '') def test_pycfunction_o(self): self.check_pycfunction('meth_o', '[]') def test_pycfunction_varargs(self): self.check_pycfunction('meth_varargs', '') def test_pycfunction_varargs_keywords(self): self.check_pycfunction('meth_varargs_keywords', '') def test_pycfunction_fastcall(self): self.check_pycfunction('meth_fastcall', '') def test_pycfunction_fastcall_keywords(self): self.check_pycfunction('meth_fastcall_keywords', '')
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply