(self)
| 372 | class InvalidateCacheTests: |
| 373 | |
| 374 | def test_method_called(self): |
| 375 | # If defined the method should be called. |
| 376 | class InvalidatingNullFinder: |
| 377 | def __init__(self, *ignored): |
| 378 | self.called = False |
| 379 | def invalidate_caches(self): |
| 380 | self.called = True |
| 381 | |
| 382 | key = os.path.abspath('gobledeegook') |
| 383 | meta_ins = InvalidatingNullFinder() |
| 384 | path_ins = InvalidatingNullFinder() |
| 385 | sys.meta_path.insert(0, meta_ins) |
| 386 | self.addCleanup(lambda: sys.path_importer_cache.__delitem__(key)) |
| 387 | sys.path_importer_cache[key] = path_ins |
| 388 | self.addCleanup(lambda: sys.meta_path.remove(meta_ins)) |
| 389 | self.init.invalidate_caches() |
| 390 | self.assertTrue(meta_ins.called) |
| 391 | self.assertTrue(path_ins.called) |
| 392 | |
| 393 | def test_method_lacking(self): |
| 394 | # There should be no issues if the method is not defined. |
nothing calls this directly
no test coverage detected