| # Test the frozen module defined in frozen.c. | 
 |  | 
 | from test.support import captured_stdout, run_unittest | 
 | import unittest | 
 | import sys | 
 |  | 
 | class FrozenTests(unittest.TestCase): | 
 |     def test_frozen(self): | 
 |         with captured_stdout() as stdout: | 
 |             try: | 
 |                 import __hello__ | 
 |             except ImportError as x: | 
 |                 self.fail("import __hello__ failed:" + str(x)) | 
 |             self.assertEqual(__hello__.initialized, True) | 
 |             self.assertEqual(len(dir(__hello__)), 7, dir(__hello__)) | 
 |             self.assertEqual(stdout.getvalue(), 'Hello world!\n') | 
 |  | 
 |         with captured_stdout() as stdout: | 
 |             try: | 
 |                 import __phello__ | 
 |             except ImportError as x: | 
 |                 self.fail("import __phello__ failed:" + str(x)) | 
 |             self.assertEqual(__phello__.initialized, True) | 
 |             if not "__phello__.spam" in sys.modules: | 
 |                 self.assertEqual(len(dir(__phello__)), 8, dir(__phello__)) | 
 |             else: | 
 |                 self.assertEqual(len(dir(__phello__)), 9, dir(__phello__)) | 
 |             self.assertEqual(__phello__.__path__, [__phello__.__name__]) | 
 |             self.assertEqual(stdout.getvalue(), 'Hello world!\n') | 
 |  | 
 |         with captured_stdout() as stdout: | 
 |             try: | 
 |                 import __phello__.spam | 
 |             except ImportError as x: | 
 |                 self.fail("import __phello__.spam failed:" + str(x)) | 
 |             self.assertEqual(__phello__.spam.initialized, True) | 
 |             self.assertEqual(len(dir(__phello__.spam)), 7) | 
 |             self.assertEqual(len(dir(__phello__)), 9) | 
 |             self.assertEqual(stdout.getvalue(), 'Hello world!\n') | 
 |  | 
 |         try: | 
 |             import __phello__.foo | 
 |         except ImportError: | 
 |             pass | 
 |         else: | 
 |             self.fail("import __phello__.foo should have failed") | 
 |  | 
 |             try: | 
 |                 import __phello__.foo | 
 |             except ImportError: | 
 |                 pass | 
 |             else: | 
 |                 self.fail("import __phello__.foo should have failed") | 
 |  | 
 |         del sys.modules['__hello__'] | 
 |         del sys.modules['__phello__'] | 
 |         del sys.modules['__phello__.spam'] | 
 |  | 
 | def test_main(): | 
 |     run_unittest(FrozenTests) | 
 |  | 
 | if __name__ == "__main__": | 
 |     test_main() |