summaryrefslogtreecommitdiff
path: root/coverage
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2022-10-24 06:57:36 -0400
committerNed Batchelder <ned@nedbatchelder.com>2022-10-30 15:45:47 -0400
commit45cf7936ee605cfe06f7f5967a72a73198960120 (patch)
tree493a19fa5ea2bc3636aca686e8ac9d278fa21fc9 /coverage
parentec6205a8de972af6a09453235d02a7ebea6aea8e (diff)
downloadpython-coveragepy-git-45cf7936ee605cfe06f7f5967a72a73198960120.tar.gz
fix: more relative_files=true fixes. #1280
Diffstat (limited to 'coverage')
-rw-r--r--coverage/python.py9
-rw-r--r--coverage/xmlreport.py3
2 files changed, 10 insertions, 2 deletions
diff --git a/coverage/python.py b/coverage/python.py
index da43e6e8..c8b8e774 100644
--- a/coverage/python.py
+++ b/coverage/python.py
@@ -151,7 +151,14 @@ class PythonFileReporter(FileReporter):
filename = source_for_morf(morf)
- super().__init__(canonical_filename(filename))
+ fname = filename
+ canonicalize = True
+ if self.coverage is not None:
+ if self.coverage.config.relative_files:
+ canonicalize = False
+ if canonicalize:
+ fname = canonical_filename(filename)
+ super().__init__(fname)
if hasattr(morf, '__name__'):
name = morf.__name__.replace(".", os.sep)
diff --git a/coverage/xmlreport.py b/coverage/xmlreport.py
index 2c34cb54..5eb940bf 100644
--- a/coverage/xmlreport.py
+++ b/coverage/xmlreport.py
@@ -149,7 +149,8 @@ class XmlReporter:
# are populated later. Note that a package == a directory.
filename = fr.filename.replace("\\", "/")
for source_path in self.source_paths:
- source_path = files.canonical_filename(source_path)
+ if not self.config.relative_files:
+ source_path = files.canonical_filename(source_path)
if filename.startswith(source_path.replace("\\", "/") + "/"):
rel_name = filename[len(source_path)+1:]
break