aboutsummaryrefslogtreecommitdiffstats
path: root/setuptools/py31compat.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2014-04-06 18:33:37 -0400
committerJason R. Coombs <jaraco@jaraco.com>2014-04-06 18:33:37 -0400
commit8b74269476d72e2e05a6f7ff35d693b816e9457c (patch)
tree6be6fffca0cf77839b60ef9585b0eaa925874669 /setuptools/py31compat.py
parentd5f19d2efb05693cf0934e8fc32f6c2b71ee6e38 (diff)
downloadexternal_python_setuptools-8b74269476d72e2e05a6f7ff35d693b816e9457c.tar.gz
external_python_setuptools-8b74269476d72e2e05a6f7ff35d693b816e9457c.tar.bz2
external_python_setuptools-8b74269476d72e2e05a6f7ff35d693b816e9457c.zip
Wrap unittest.main in a compatibility wrapper for Python 3.1 compatibility. Fixes #1833.4.2
Diffstat (limited to 'setuptools/py31compat.py')
-rw-r--r--setuptools/py31compat.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/setuptools/py31compat.py b/setuptools/py31compat.py
index e6b2910a..6e765582 100644
--- a/setuptools/py31compat.py
+++ b/setuptools/py31compat.py
@@ -1,3 +1,6 @@
+import sys
+import unittest
+
__all__ = ['get_config_vars', 'get_path']
try:
@@ -35,3 +38,15 @@ except ImportError:
except OSError: #removal errors are not the only possible
pass
self.name = None
+
+
+unittest_main = unittest.main
+
+_PY31 = (3, 1) <= sys.version_info[:2] < (3, 2)
+if _PY31:
+ # on Python 3.1, translate testRunner==None to defaultTestLoader
+ # for compatibility with Python 2.6, 2.7, and 3.2+
+ def unittest_main(*args, **kwargs):
+ if 'testRunner' in kwargs and kwargs['testRunner'] is None:
+ kwargs['testRunner'] = unittest.defaultTestLoader
+ return unittest.main(*args, **kwargs)