Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2619)

Unified Diff: third_party/google-endpoints/setuptools/py31compat.py

Issue 2666783008: Add google-endpoints to third_party/. (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/google-endpoints/setuptools/py31compat.py
diff --git a/third_party/google-endpoints/setuptools/py31compat.py b/third_party/google-endpoints/setuptools/py31compat.py
new file mode 100644
index 0000000000000000000000000000000000000000..44b025d4b255c6942c7a7c313f84705541094765
--- /dev/null
+++ b/third_party/google-endpoints/setuptools/py31compat.py
@@ -0,0 +1,56 @@
+import sys
+import unittest
+
+__all__ = ['get_config_vars', 'get_path']
+
+try:
+ # Python 2.7 or >=3.2
+ from sysconfig import get_config_vars, get_path
+except ImportError:
+ from distutils.sysconfig import get_config_vars, get_python_lib
+
+ def get_path(name):
+ if name not in ('platlib', 'purelib'):
+ raise ValueError("Name must be purelib or platlib")
+ return get_python_lib(name == 'platlib')
+
+
+try:
+ # Python >=3.2
+ from tempfile import TemporaryDirectory
+except ImportError:
+ import shutil
+ import tempfile
+
+ class TemporaryDirectory(object):
+ """
+ Very simple temporary directory context manager.
+ Will try to delete afterward, but will also ignore OS and similar
+ errors on deletion.
+ """
+
+ def __init__(self):
+ self.name = None # Handle mkdtemp raising an exception
+ self.name = tempfile.mkdtemp()
+
+ def __enter__(self):
+ return self.name
+
+ def __exit__(self, exctype, excvalue, exctrace):
+ try:
+ shutil.rmtree(self.name, True)
+ 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 TextTestRunner
+ # 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.TextTestRunner
+ return unittest.main(*args, **kwargs)
« no previous file with comments | « third_party/google-endpoints/setuptools/py27compat.py ('k') | third_party/google-endpoints/setuptools/py33compat.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698