diff options
author | loic <loic@dachary.org> | 2017-01-10 17:31:34 +0100 |
---|---|---|
committer | loic <loic@dachary.org> | 2017-01-10 17:31:34 +0100 |
commit | 5ffdccc8a588921cdaef8c3a55ecfb5ff9170309 (patch) | |
tree | 05811f0d6b3affcd5d94b9789e728779ea672b1e /tests/test_python.py | |
parent | ec3022971e7a1b56628a9c8c7d35a50570a9bcf7 (diff) | |
download | python-coveragepy-5ffdccc8a588921cdaef8c3a55ecfb5ff9170309.tar.gz |
source_for_file helper with unit tests
Diffstat (limited to 'tests/test_python.py')
-rw-r--r-- | tests/test_python.py | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/tests/test_python.py b/tests/test_python.py index ee1e1f9..c4e333e 100644 --- a/tests/test_python.py +++ b/tests/test_python.py @@ -5,8 +5,9 @@ import os import sys +from coverage import env -from coverage.python import get_zip_bytes +from coverage.python import get_zip_bytes, source_for_file from tests.coveragetest import CoverageTest @@ -28,3 +29,27 @@ class GetZipBytesTest(CoverageTest): self.assertIn('All OK', zip_text) # Run the code to see that we really got it encoded properly. __import__("encoded_"+encoding) + +def test_source_for_file(tmpdir): + path = tmpdir.join("a.py") + src = str(path) + assert src == source_for_file(src) + assert src == source_for_file(src + 'c') + assert src == source_for_file(src + 'o') + unknown = src + 'FOO' + assert unknown == source_for_file(unknown) + # + # On windows if a pyw exists, it is an acceptable source + # + windows = env.WINDOWS + env.WINDOWS = True + path_windows = tmpdir.ensure("a.pyw") + assert str(path_windows) == source_for_file(src + 'c') + # + # If both pyw and py exist, py is preferred + # + path.ensure(file=True) + assert src == source_for_file(src + 'c') + env.WINDOWS = windows + jython_src = "a" + assert jython_src + ".py" == source_for_file(jython_src + "$py.class") |