cpython: 906c69928049 (original) (raw)
Mercurial > cpython
changeset 77945:906c69928049
Issue #15210: Greatly simplify the test for supporting importlib working without _frozen_importlib by moving to an import over a direct access in sys.modules. [#15210]
Brett Cannon brett@python.org | |
---|---|
date | Wed, 04 Jul 2012 14:03:40 -0400 |
parents | 070977904889 |
children | 1186d68715cc |
files | Lib/importlib/__init__.py Lib/importlib/test/test_api.py |
diffstat | 2 files changed, 7 insertions(+), 14 deletions(-)[+] [-] Lib/importlib/__init__.py 4 Lib/importlib/test/test_api.py 17 |
line wrap: on
line diff
--- a/Lib/importlib/init.py +++ b/Lib/importlib/init.py @@ -6,8 +6,8 @@ import imp import sys try:
+except ImportError: from . import _bootstrap _bootstrap._setup(sys, imp) else:
--- a/Lib/importlib/test/test_api.py +++ b/Lib/importlib/test/test_api.py @@ -1,7 +1,9 @@ from . import util import imp import importlib +from importlib import machinery import sys +from test import support import unittest @@ -164,18 +166,9 @@ class FrozenImportlibTests(unittest.Test def test_no_frozen_importlib(self): # Should be able to import w/o _frozen_importlib being defined.
modules = {}[](#l2.17)
for name in ('importlib', 'importlib.__init__', 'importlib._bootstrap',[](#l2.18)
'_frozen_importlib'):[](#l2.19)
try:[](#l2.20)
modules[name] = sys.modules[name][](#l2.21)
del sys.modules[name][](#l2.22)
except KeyError:[](#l2.23)
continue[](#l2.24)
modules['_frozen_importlib'] = None[](#l2.25)
import importlib[](#l2.26)
for name, module in modules.items():[](#l2.27)
sys.modules[name] = module[](#l2.28)
module = support.import_fresh_module('importlib', blocked=['_frozen_importlib'])[](#l2.29)
self.assertFalse(isinstance(module.__loader__,[](#l2.30)
machinery.FrozenImporter))[](#l2.31)