[Python-checkins] r74563 - python/branches/py3k/Lib/importlib/test/regrtest.py

brett.cannon python-checkins at python.org
Fri Aug 28 01:52:35 CEST 2009


Author: brett.cannon
Date: Fri Aug 28 01:52:35 2009
New Revision: 74563

Log:
Add a test file to importlib that runs regrtest using importlib.__import__.

The file must be run using runpy. Certain tests are currently excluded from
being run as they have known failures based on golden value checks that fail
for various reasons (typically because __loader__ is not expected to be set on
modules). Running the tests with this file does discover some incompatibilites
in importlib that will be fixed in the near future (as noted currently in the
docstring).


Added:
   python/branches/py3k/Lib/importlib/test/regrtest.py

Added: python/branches/py3k/Lib/importlib/test/regrtest.py
==============================================================================
--- (empty file)
+++ python/branches/py3k/Lib/importlib/test/regrtest.py	Fri Aug 28 01:52:35 2009
@@ -0,0 +1,33 @@
+"""Run Python's standard test suite using importlib.__import__.
+
+XXX FAILING
+    test___all__  # tuple being given for fromlist (looks like interpreter is
+                    doing it)
+    test_builtin  # Wanting a TypeError for an integer name
+    test_import  # execution bit, exception name differing, file name differing
+                    between code and module (?)
+    test_importhooks  # package not set in _gcd_import() but level > 0
+    test_pep3120  # Difference in exception
+    test_runpy  # Importing sys.imp.eric raises AttributeError instead of
+                    ImportError (as does any attempt to import a sub-module
+                    from a non-package, e.g. tokenize.menotreal)
+
+"""
+import importlib
+import sys
+from test import regrtest
+
+if __name__ == '__main__':
+    __builtins__.__import__ = importlib.__import__
+
+    exclude = ['--exclude',
+                'test_frozen', # Does not expect __loader__ attribute
+                'test_pkg',  # Does not expect __loader__ attribute
+                'test_pydoc', # Does not expect __loader__ attribute
+              ]
+    # No programmatic way to specify tests to exclude
+    sys.argv.extend(exclude)
+
+    # verbose=True, quiet=False for all failure info
+    # tests=[...] for specific tests to run
+    regrtest.main(quiet=True)


More information about the Python-checkins mailing list