| 2756 | return _load(spec) |
| 2757 | |
| 2758 | def load(self, name): |
| 2759 | try: |
| 2760 | already_loaded = self.already_loaded |
| 2761 | except AttributeError: |
| 2762 | already_loaded = self.already_loaded = {} |
| 2763 | assert name not in already_loaded |
| 2764 | mod = self._load_dynamic(name, self.ORIGIN) |
| 2765 | self.assertNotIn(mod, already_loaded.values()) |
| 2766 | already_loaded[name] = mod |
| 2767 | return types.SimpleNamespace( |
| 2768 | name=name, |
| 2769 | module=mod, |
| 2770 | snapshot=TestSinglePhaseSnapshot.from_module(mod), |
| 2771 | ) |
| 2772 | |
| 2773 | def re_load(self, name, mod): |
| 2774 | assert sys.modules[name] is mod |