diff options
author | Brett Cannon <bcannon@gmail.com> | 2009-01-18 06:55:05 (GMT) |
---|---|---|
committer | Brett Cannon <bcannon@gmail.com> | 2009-01-18 06:55:05 (GMT) |
commit | 2c5c79cfc477c0537f296fa3ce7289dbc9a72c83 (patch) | |
tree | 1feeac55b8bbf27bf03a0ef8ff04c681153f0ca3 /Lib/importlib | |
parent | b0516a6bc6cdc580846b075bc27b1d3281dd6295 (diff) | |
download | cpython-2c5c79cfc477c0537f296fa3ce7289dbc9a72c83.zip cpython-2c5c79cfc477c0537f296fa3ce7289dbc9a72c83.tar.gz cpython-2c5c79cfc477c0537f296fa3ce7289dbc9a72c83.tar.bz2 |
Tests of case-sensitivity were being executed on OSs which did not have a
case-insensitive file system, leading to test failures. This was due to using
the TestCase objects directly instead of the guard in the test_main() function.
Move over to a class decorator instead to control if the tests should be run.
Diffstat (limited to 'Lib/importlib')
-rw-r--r-- | Lib/importlib/test/extension/test_case_sensitivity.py | 4 | ||||
-rw-r--r-- | Lib/importlib/test/source/test_case_sensitivity.py | 3 | ||||
-rw-r--r-- | Lib/importlib/test/support.py | 10 |
3 files changed, 13 insertions, 4 deletions
diff --git a/Lib/importlib/test/extension/test_case_sensitivity.py b/Lib/importlib/test/extension/test_case_sensitivity.py index c566b23..575bf69 100644 --- a/Lib/importlib/test/extension/test_case_sensitivity.py +++ b/Lib/importlib/test/extension/test_case_sensitivity.py @@ -2,9 +2,11 @@ import sys from test import support as test_support import unittest import importlib +from .. import support from . import test_path_hook +@support.case_insensitive_tests class ExtensionModuleCaseSensitivityTest(unittest.TestCase): def find_module(self): @@ -30,8 +32,6 @@ class ExtensionModuleCaseSensitivityTest(unittest.TestCase): def test_main(): - if sys.platform not in ('win32', 'darwin', 'cygwin'): - return test_support.run_unittest(ExtensionModuleCaseSensitivityTest) diff --git a/Lib/importlib/test/source/test_case_sensitivity.py b/Lib/importlib/test/source/test_case_sensitivity.py index 1a5ff2f..6649f37 100644 --- a/Lib/importlib/test/source/test_case_sensitivity.py +++ b/Lib/importlib/test/source/test_case_sensitivity.py @@ -7,6 +7,7 @@ from test import support as test_support import unittest +@support.case_insensitive_tests class CaseSensitivityTest(unittest.TestCase): """PEP 235 dictates that on case-preserving, case-insensitive file systems @@ -48,8 +49,6 @@ class CaseSensitivityTest(unittest.TestCase): def test_main(): - if sys.platform not in ('win32', 'darwin', 'cygwin'): - return test_support.run_unittest(CaseSensitivityTest) diff --git a/Lib/importlib/test/support.py b/Lib/importlib/test/support.py index 4e63cd1..3097811 100644 --- a/Lib/importlib/test/support.py +++ b/Lib/importlib/test/support.py @@ -36,6 +36,16 @@ def writes_bytecode(fxn): else: return fxn + +def case_insensitive_tests(class_): + """Class decorator that nullifies tests that require a case-insensitive + file system.""" + if sys.platform not in ('win32', 'darwin', 'cygwin'): + return object() + else: + return class_ + + @contextmanager def uncache(*names): """Uncache a module from sys.modules. |