(self, source_code=None, loader=None)
| 66 | util.LazyLoader(object) |
| 67 | |
| 68 | def new_module(self, source_code=None, loader=None): |
| 69 | if loader is None: |
| 70 | loader = TestingImporter() |
| 71 | if source_code is not None: |
| 72 | loader.source_code = source_code |
| 73 | spec = util.spec_from_loader(TestingImporter.module_name, |
| 74 | util.LazyLoader(loader)) |
| 75 | module = spec.loader.create_module(spec) |
| 76 | if module is None: |
| 77 | module = types.ModuleType(TestingImporter.module_name) |
| 78 | module.__spec__ = spec |
| 79 | module.__loader__ = spec.loader |
| 80 | spec.loader.exec_module(module) |
| 81 | # Module is now lazy. |
| 82 | self.assertIsNone(loader.loaded) |
| 83 | return module |
| 84 | |
| 85 | def test_e2e(self): |
| 86 | # End-to-end test to verify the load is in fact lazy. |
no test coverage detected