summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/support/__init__.py15
-rw-r--r--Lib/test/test_capi/test_getargs.py8
-rw-r--r--Lib/test/test_csv.py2
-rw-r--r--Lib/test/test_decimal.py4
-rw-r--r--Lib/test/test_unicode.py4
5 files changed, 17 insertions, 16 deletions
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
index c3c3cf0..ef7b5c8 100644
--- a/Lib/test/support/__init__.py
+++ b/Lib/test/support/__init__.py
@@ -21,11 +21,6 @@ import warnings
from .testresult import get_test_runner
-try:
- from _testcapi import unicode_legacy_string
-except ImportError:
- unicode_legacy_string = None
-
__all__ = [
# globals
"PIPE_MAX_SIZE", "verbose", "max_memuse", "use_resources", "failfast",
@@ -507,8 +502,14 @@ def has_no_debug_ranges():
def requires_debug_ranges(reason='requires co_positions / debug_ranges'):
return unittest.skipIf(has_no_debug_ranges(), reason)
-requires_legacy_unicode_capi = unittest.skipUnless(unicode_legacy_string,
- 'requires legacy Unicode C API')
+def requires_legacy_unicode_capi():
+ try:
+ from _testcapi import unicode_legacy_string
+ except ImportError:
+ unicode_legacy_string = None
+
+ return unittest.skipUnless(unicode_legacy_string,
+ 'requires legacy Unicode C API')
# Is not actually used in tests, but is kept for compatibility.
is_jython = sys.platform.startswith('java')
diff --git a/Lib/test/test_capi/test_getargs.py b/Lib/test/test_capi/test_getargs.py
index 3792d1a..ec4100e 100644
--- a/Lib/test/test_capi/test_getargs.py
+++ b/Lib/test/test_capi/test_getargs.py
@@ -1021,7 +1021,7 @@ class String_TestCase(unittest.TestCase):
buf = bytearray()
self.assertRaises(ValueError, getargs_et_hash, 'abc\xe9', 'latin1', buf)
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
def test_u(self):
from _testcapi import getargs_u
with self.assertWarns(DeprecationWarning):
@@ -1037,7 +1037,7 @@ class String_TestCase(unittest.TestCase):
with self.assertWarns(DeprecationWarning):
self.assertRaises(TypeError, getargs_u, None)
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
def test_u_hash(self):
from _testcapi import getargs_u_hash
with self.assertWarns(DeprecationWarning):
@@ -1053,7 +1053,7 @@ class String_TestCase(unittest.TestCase):
with self.assertWarns(DeprecationWarning):
self.assertRaises(TypeError, getargs_u_hash, None)
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
def test_Z(self):
from _testcapi import getargs_Z
with self.assertWarns(DeprecationWarning):
@@ -1069,7 +1069,7 @@ class String_TestCase(unittest.TestCase):
with self.assertWarns(DeprecationWarning):
self.assertIsNone(getargs_Z(None))
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
def test_Z_hash(self):
from _testcapi import getargs_Z_hash
with self.assertWarns(DeprecationWarning):
diff --git a/Lib/test/test_csv.py b/Lib/test/test_csv.py
index de7ac97..bc9961e 100644
--- a/Lib/test/test_csv.py
+++ b/Lib/test/test_csv.py
@@ -282,7 +282,7 @@ class Test_Csv(unittest.TestCase):
self.assertRaises(OSError, writer.writerows, BadIterable())
@support.cpython_only
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
@warnings_helper.ignore_warnings(category=DeprecationWarning)
def test_writerows_legacy_strings(self):
import _testcapi
diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py
index d0ba348..4d3ea73 100644
--- a/Lib/test/test_decimal.py
+++ b/Lib/test/test_decimal.py
@@ -587,7 +587,7 @@ class ExplicitConstructionTest:
self.assertRaises(InvalidOperation, Decimal, "1_2_\u00003")
@cpython_only
- @requires_legacy_unicode_capi
+ @requires_legacy_unicode_capi()
@warnings_helper.ignore_warnings(category=DeprecationWarning)
def test_from_legacy_strings(self):
import _testcapi
@@ -2919,7 +2919,7 @@ class ContextAPItests:
Overflow])
@cpython_only
- @requires_legacy_unicode_capi
+ @requires_legacy_unicode_capi()
@warnings_helper.ignore_warnings(category=DeprecationWarning)
def test_from_legacy_strings(self):
import _testcapi
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index 4ebbb9d..2fd66c9 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -814,7 +814,7 @@ class UnicodeTest(string_tests.CommonTest,
self.assertFalse("0".isidentifier())
@support.cpython_only
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
@unittest.skipIf(_testcapi is None, 'need _testcapi module')
def test_isidentifier_legacy(self):
u = '𝖀𝖓𝖎𝖈𝖔𝖉𝖊'
@@ -2491,7 +2491,7 @@ class UnicodeTest(string_tests.CommonTest,
self.assertEqual(len(args), 1)
@support.cpython_only
- @support.requires_legacy_unicode_capi
+ @support.requires_legacy_unicode_capi()
@unittest.skipIf(_testcapi is None, 'need _testcapi module')
def test_resize(self):
for length in range(1, 100, 7):