summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_decimal.py
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2022-03-02 17:12:26 (GMT)
committerGitHub <noreply@github.com>2022-03-02 17:12:26 (GMT)
commit359bc392ba2b8f2acca223426c8210bb74f724c6 (patch)
tree048b319c545b53f52f7bc8e0e26d88ffbcbd9830 /Lib/test/test_decimal.py
parent3ea2a8f425d26e81d914c54d477e9d56eb27ac98 (diff)
downloadcpython-359bc392ba2b8f2acca223426c8210bb74f724c6.zip
cpython-359bc392ba2b8f2acca223426c8210bb74f724c6.tar.gz
cpython-359bc392ba2b8f2acca223426c8210bb74f724c6.tar.bz2
[3.10] bpo-46633: Skip tests on ASAN and/or MSAN builds (GH-31632) (GH-31634) (GH-31644)
* Refactor sanitiser skip tests into test.support (GH-30889) * Refactor sanitizer skip tests into test.support (cherry picked from commit b1cb8430504931f7854eac5d32cba74770078a4e) * Add skips to crashing tests under sanitizers instead of manually skipping them (GH-30897) (cherry picked from commit a27505345e34d462139f5f8b6b5e7c9a59955150) * bpo-46633: Skip tests on ASAN and/or MSAN builds (GH-31632) Skip tests on ASAN and/or MSAN builds: * multiprocessing tests * test___all__ * test_concurrent_futures * test_decimal * test_peg_generator * test_tools (cherry picked from commit 9204bb72a2da5885facc747e63d2bd2d654606fe) Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com> (cherry picked from commit 93264452d952d9ba604bacf2947c2df5dd477931)
Diffstat (limited to 'Lib/test/test_decimal.py')
-rw-r--r--Lib/test/test_decimal.py21
1 files changed, 6 insertions, 15 deletions
diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py
index 3f30a93..58f4df3 100644
--- a/Lib/test/test_decimal.py
+++ b/Lib/test/test_decimal.py
@@ -33,24 +33,14 @@ import unittest
import numbers
import locale
from test.support import (run_unittest, run_doctest, is_resource_enabled,
- requires_IEEE_754, requires_docstrings)
-from test.support import (import_fresh_module, TestFailed,
+ requires_IEEE_754, requires_docstrings,
+ import_fresh_module, TestFailed,
run_with_locale, cpython_only,
- darwin_malloc_err_warning)
+ darwin_malloc_err_warning,
+ check_sanitizer)
import random
import inspect
import threading
-import sysconfig
-_cflags = sysconfig.get_config_var('CFLAGS') or ''
-_config_args = sysconfig.get_config_var('CONFIG_ARGS') or ''
-MEMORY_SANITIZER = (
- '-fsanitize=memory' in _cflags or
- '--with-memory-sanitizer' in _config_args
-)
-
-ADDRESS_SANITIZER = (
- '-fsanitize=address' in _cflags
-)
if sys.platform == 'darwin':
@@ -5497,7 +5487,8 @@ class CWhitebox(unittest.TestCase):
# Issue 41540:
@unittest.skipIf(sys.platform.startswith("aix"),
"AIX: default ulimit: test is flaky because of extreme over-allocation")
- @unittest.skipIf(MEMORY_SANITIZER or ADDRESS_SANITIZER, "sanitizer defaults to crashing "
+ @unittest.skipIf(check_sanitizer(address=True, memory=True),
+ "ASAN/MSAN sanitizer defaults to crashing "
"instead of returning NULL for malloc failure.")
def test_maxcontext_exact_arith(self):