diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2011-05-16 14:57:18 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2011-05-16 14:57:18 (GMT) |
commit | 272e24356eea6b2ded4cb4f0a8617e31ebb0196d (patch) | |
tree | e08aa1246da036cf9578c96218096de270acc935 /Lib/importlib | |
parent | 033a543ab1ff09abb8b79c67d748862ce8b55e37 (diff) | |
download | cpython-272e24356eea6b2ded4cb4f0a8617e31ebb0196d.zip cpython-272e24356eea6b2ded4cb4f0a8617e31ebb0196d.tar.gz cpython-272e24356eea6b2ded4cb4f0a8617e31ebb0196d.tar.bz2 |
Issue #11614: Fix importlib tests for the new __hello__ module
Diffstat (limited to 'Lib/importlib')
-rw-r--r-- | Lib/importlib/test/frozen/test_loader.py | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/Lib/importlib/test/frozen/test_loader.py b/Lib/importlib/test/frozen/test_loader.py index fa64f30..06532f1 100644 --- a/Lib/importlib/test/frozen/test_loader.py +++ b/Lib/importlib/test/frozen/test_loader.py @@ -3,20 +3,21 @@ import imp import unittest from .. import abc from .. import util - +from test.support import captured_stdout class LoaderTests(abc.LoaderTests): def test_module(self): - with util.uncache('__hello__'): + with util.uncache('__hello__'), captured_stdout() as stdout: module = machinery.FrozenImporter.load_module('__hello__') check = {'__name__': '__hello__', '__file__': '<frozen>', '__package__': '', '__loader__': machinery.FrozenImporter} for attr, value in check.items(): self.assertEqual(getattr(module, attr), value) + self.assertEqual(stdout.getvalue(), 'Hello world!\n') def test_package(self): - with util.uncache('__phello__'): + with util.uncache('__phello__'), captured_stdout() as stdout: module = machinery.FrozenImporter.load_module('__phello__') check = {'__name__': '__phello__', '__file__': '<frozen>', '__package__': '__phello__', '__path__': ['__phello__'], @@ -26,9 +27,11 @@ class LoaderTests(abc.LoaderTests): self.assertEqual(attr_value, value, "for __phello__.%s, %r != %r" % (attr, attr_value, value)) + self.assertEqual(stdout.getvalue(), 'Hello world!\n') def test_lacking_parent(self): - with util.uncache('__phello__', '__phello__.spam'): + with util.uncache('__phello__', '__phello__.spam'), \ + captured_stdout() as stdout: module = machinery.FrozenImporter.load_module('__phello__.spam') check = {'__name__': '__phello__.spam', '__file__': '<frozen>', '__package__': '__phello__', @@ -38,12 +41,15 @@ class LoaderTests(abc.LoaderTests): self.assertEqual(attr_value, value, "for __phello__.spam.%s, %r != %r" % (attr, attr_value, value)) + self.assertEqual(stdout.getvalue(), 'Hello world!\n') def test_module_reuse(self): - with util.uncache('__hello__'): + with util.uncache('__hello__'), captured_stdout() as stdout: module1 = machinery.FrozenImporter.load_module('__hello__') module2 = machinery.FrozenImporter.load_module('__hello__') self.assertTrue(module1 is module2) + self.assertEqual(stdout.getvalue(), + 'Hello world!\nHello world!\n') def test_state_after_failure(self): # No way to trigger an error in a frozen module. @@ -62,10 +68,12 @@ class InspectLoaderTests(unittest.TestCase): def test_get_code(self): # Make sure that the code object is good. name = '__hello__' - code = machinery.FrozenImporter.get_code(name) - mod = imp.new_module(name) - exec(code, mod.__dict__) - self.assertTrue(hasattr(mod, 'initialized')) + with captured_stdout() as stdout: + code = machinery.FrozenImporter.get_code(name) + mod = imp.new_module(name) + exec(code, mod.__dict__) + self.assertTrue(hasattr(mod, 'initialized')) + self.assertEqual(stdout.getvalue(), 'Hello world!\n') def test_get_source(self): # Should always return None. |