diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2009-10-25 09:38:58 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2009-10-25 09:38:58 -0400 |
commit | a7f4c6c633a1ff02412f4f3e6695c12e2ba87808 (patch) | |
tree | d8e0beb3bd7d7a9bb4d50e698314246fcfeb4f08 /test/test_coverage.py | |
parent | ffb82b1d4ce8553ac230d3ecabbf094c4c20d140 (diff) | |
download | python-coveragepy-git-a7f4c6c633a1ff02412f4f3e6695c12e2ba87808.tar.gz |
Treat missing source files nicer.
Diffstat (limited to 'test/test_coverage.py')
-rw-r--r-- | test/test_coverage.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/test_coverage.py b/test/test_coverage.py index b4d57527..92aef086 100644 --- a/test/test_coverage.py +++ b/test/test_coverage.py @@ -1725,6 +1725,28 @@ class ProcessTest(CoverageTest): data.read_file(".coverage") self.assertEqual(data.summary()['b_or_c.py'], 7) + def test_missing_source_file(self): + # Check what happens if the source is missing when reporting happens. + self.make_file("fleeting.py", """\ + s = 'goodbye, cruel world!' + """) + + self.run_command("coverage run fleeting.py") + os.remove("fleeting.py") + out = self.run_command("coverage html -d htmlcov") + self.assert_matches(out, "No source for code: '.*fleeting.py'") + self.assert_("Traceback" not in out) + + # It happens that the code paths are different for *.py and other files. + self.make_file("fleeting", """\ + s = 'goodbye, cruel world!' + """) + + self.run_command("coverage run fleeting") + os.remove("fleeting") + out = self.run_command("coverage html -d htmlcov") + self.assert_matches(out, "No source for code: '.*fleeting'") + self.assert_("Traceback" not in out) class RecursionTest(CoverageTest): """Check what happens when recursive code gets near limits.""" |