summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_gdb.py
diff options
context:
space:
mode:
authorNick Coghlan <ncoghlan@gmail.com>2012-06-17 08:57:20 (GMT)
committerNick Coghlan <ncoghlan@gmail.com>2012-06-17 08:57:20 (GMT)
commitbe4e4b5691492008dae31c82dc6ac2aba230b4e5 (patch)
treef5efb65a18cc221de9bc1dd6e38fda7cf1234a25 /Lib/test/test_gdb.py
parent50f147a9be10ee379c4c7bacb81df5e4edf24044 (diff)
downloadcpython-be4e4b5691492008dae31c82dc6ac2aba230b4e5.zip
cpython-be4e4b5691492008dae31c82dc6ac2aba230b4e5.tar.gz
cpython-be4e4b5691492008dae31c82dc6ac2aba230b4e5.tar.bz2
Issue #15043: skip test_gdb if the custom hooks can't be loaded
Diffstat (limited to 'Lib/test/test_gdb.py')
-rw-r--r--Lib/test/test_gdb.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_gdb.py b/Lib/test/test_gdb.py
index aea7c0c..a02f5c7 100644
--- a/Lib/test/test_gdb.py
+++ b/Lib/test/test_gdb.py
@@ -32,6 +32,15 @@ gdbpy_version, _ = p.communicate()
if gdbpy_version == b'':
raise unittest.SkipTest("gdb not built with embedded python support")
+# Verify that "gdb" can load our custom hooks
+p = subprocess.Popen(["gdb", "--batch", cmd,
+ "--args", sys.executable],
+ stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+__, gdbpy_errors = p.communicate()
+if b"auto-loading has been declined" in gdbpy_errors:
+ msg = "gdb security settings prevent use of custom hooks: %s"
+ raise unittest.SkipTest(msg % gdbpy_errors)
+
def gdb_has_frame_select():
# Does this build of gdb have gdb.Frame.select ?
cmd = "--eval-command=python print(dir(gdb.Frame))"