summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test')
-rwxr-xr-xLib/test/regrtest.py3
-rw-r--r--Lib/test/support.py13
-rw-r--r--Lib/test/test_gdb.py14
3 files changed, 19 insertions, 11 deletions
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index 300cf39..c487d29 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -1449,6 +1449,9 @@ class _ExpectedSkips:
if sys.platform != 'sunos5':
self.expected.add('test_nis')
+ if support.python_is_optimized():
+ self.expected.add("test_gdb")
+
self.valid = True
def isvalid(self):
diff --git a/Lib/test/support.py b/Lib/test/support.py
index 31528a9..132bc56 100644
--- a/Lib/test/support.py
+++ b/Lib/test/support.py
@@ -20,6 +20,9 @@ import re
import subprocess
import imp
import time
+import sysconfig
+
+
try:
import _thread
except ImportError:
@@ -885,6 +888,16 @@ def gc_collect():
gc.collect()
+def python_is_optimized():
+ """Find if Python was built with optimizations."""
+ cflags = sysconfig.get_config_vars()['PY_CFLAGS']
+ final_opt = ""
+ for opt in cflags.split():
+ if opt.startswith('-O'):
+ final_opt = opt
+ return final_opt and final_opt != '-O0'
+
+
#=======================================================================
# Decorator for running a function in a different locale, correctly resetting
# it afterwards.
diff --git a/Lib/test/test_gdb.py b/Lib/test/test_gdb.py
index bac8d36..55597ce 100644
--- a/Lib/test/test_gdb.py
+++ b/Lib/test/test_gdb.py
@@ -9,9 +9,8 @@ import subprocess
import sys
import unittest
import locale
-import sysconfig
-from test.support import run_unittest, findfile
+from test.support import run_unittest, findfile, python_is_optimized
try:
gdb_version, _ = subprocess.Popen(["gdb", "--version"],
@@ -665,15 +664,8 @@ class PyLocalsTests(DebuggerTests):
r".*\na = 1\nb = 2\nc = 3\n.*")
def test_main():
- cflags = sysconfig.get_config_vars()['PY_CFLAGS']
- final_opt = ""
- for opt in cflags.split():
- if opt.startswith('-O'):
- final_opt = opt
- if final_opt and final_opt != '-O0':
- raise unittest.SkipTest("Python was built with compiler optimizations, "
- "tests can't reliably succeed")
-
+ if python_is_optimized():
+ raise unittest.SkipTest("Python was compiled with optimizations")
run_unittest(PrettyPrintTests,
PyListTests,
StackNavigationTests,