summaryrefslogtreecommitdiff
path: root/coverage/files.py
diff options
context:
space:
mode:
Diffstat (limited to 'coverage/files.py')
-rw-r--r--coverage/files.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/coverage/files.py b/coverage/files.py
index ed37067f..11dbdaa3 100644
--- a/coverage/files.py
+++ b/coverage/files.py
@@ -395,7 +395,11 @@ class PathAliases:
map a path through those aliases to produce a unified path.
"""
- def __init__(self, debugfn:Optional[Callable[[str], None]]=None, relative:bool=False) -> None:
+ def __init__(
+ self,
+ debugfn: Optional[Callable[[str], None]]=None,
+ relative: bool=False,
+ ) -> None:
# A list of (original_pattern, regex, result)
self.aliases: List[Tuple[str, Regex, str]] = []
self.debugfn = debugfn or (lambda msg: 0)
@@ -431,10 +435,11 @@ class PathAliases:
if pattern.endswith("*"):
raise ConfigError("Pattern must not end with wildcards.")
- # The pattern is meant to match a filepath. Let's make it absolute
+ # The pattern is meant to match a file path. Let's make it absolute
# unless it already is, or is meant to match any prefix.
- if not pattern.startswith('*') and not isabs_anywhere(pattern + pattern_sep):
- pattern = abs_file(pattern)
+ if not self.relative:
+ if not pattern.startswith('*') and not isabs_anywhere(pattern + pattern_sep):
+ pattern = abs_file(pattern)
if not pattern.endswith(pattern_sep):
pattern += pattern_sep