diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2014-06-02 22:28:55 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2014-06-02 22:28:55 -0400 |
commit | 2ecef504147871585ea05b6003bd56794af90ddc (patch) | |
tree | cdbe9756af2187229e22370f234ec73e4a698719 /coverage/report.py | |
parent | 43fa1eef17b4e8dd3fd0976110ef287970d2d7da (diff) | |
download | python-coveragepy-git-2ecef504147871585ea05b6003bd56794af90ddc.tar.gz |
Avoid filling the fnmatch cache
Diffstat (limited to 'coverage/report.py')
-rw-r--r-- | coverage/report.py | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/coverage/report.py b/coverage/report.py index 34f44422..03e9122c 100644 --- a/coverage/report.py +++ b/coverage/report.py @@ -1,8 +1,8 @@ """Reporter foundation for Coverage.""" -import fnmatch, os +import os from coverage.codeunit import code_unit_factory -from coverage.files import prep_patterns +from coverage.files import prep_patterns, FnmatchMatcher from coverage.misc import CoverageException, NoSource, NotPython class Reporter(object): @@ -37,22 +37,19 @@ class Reporter(object): if self.config.include: patterns = prep_patterns(self.config.include) + matcher = FnmatchMatcher(patterns) filtered = [] for cu in self.code_units: - for pattern in patterns: - if fnmatch.fnmatch(cu.filename, pattern): - filtered.append(cu) - break + if matcher.match(cu.filename): + filtered.append(cu) self.code_units = filtered if self.config.omit: patterns = prep_patterns(self.config.omit) + matcher = FnmatchMatcher(patterns) filtered = [] for cu in self.code_units: - for pattern in patterns: - if fnmatch.fnmatch(cu.filename, pattern): - break - else: + if not matcher.match(cu.filename): filtered.append(cu) self.code_units = filtered |