diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2016-11-09 12:47:07 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2016-11-09 12:47:07 -0500 |
commit | e45b0a61da93eaf6d16f4229f2ce060264594cd3 (patch) | |
tree | 1ca1092ca5e34bdb325d3f9d3be33e9ec9823b0d | |
parent | c5ed1e9e27565cb52ee94227122d337237ff34be (diff) | |
download | python-coveragepy-e45b0a61da93eaf6d16f4229f2ce060264594cd3.tar.gz |
When importing newly made files, we have to invalidate import caches
-rw-r--r-- | coverage/backward.py | 6 | ||||
-rw-r--r-- | tests/coveragetest.py | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/coverage/backward.py b/coverage/backward.py index c7b607a..8d2218d 100644 --- a/coverage/backward.py +++ b/coverage/backward.py @@ -144,6 +144,12 @@ except AttributeError: PYC_MAGIC_NUMBER = imp.get_magic() +def invalidate_import_caches(): + """Invalidate any import caches that may or may not exist.""" + if importlib and hasattr(importlib, "invalidate_caches"): + importlib.invalidate_caches() + + def import_local_file(modname, modfile=None): """Import a local file as a module. diff --git a/tests/coveragetest.py b/tests/coveragetest.py index 9410e07..dacb9b6 100644 --- a/tests/coveragetest.py +++ b/tests/coveragetest.py @@ -21,6 +21,7 @@ from unittest_mixins import ( import coverage from coverage.backunittest import TestCase from coverage.backward import StringIO, import_local_file, string_class, shlex_quote +from coverage.backward import invalidate_import_caches from coverage.cmdline import CoverageScript from coverage.debug import _TEST_NAME_FILE, DebugControl @@ -77,6 +78,8 @@ class CoverageTest( if os.path.exists("__pycache__"): shutil.rmtree("__pycache__") + invalidate_import_caches() + def import_local_file(self, modname, modfile=None): """Import a local file as a module. |