From b47f561ba2c2eb922921064bc347441322379059 Mon Sep 17 00:00:00 2001 From: "rozza@x103086.gcapmedia.com" Date: Fri, 20 Nov 2009 10:08:52 +0000 Subject: Moving file filter logic out so it can be monkey patched easily --- coverage/codeunit.py | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) (limited to 'coverage/codeunit.py') diff --git a/coverage/codeunit.py b/coverage/codeunit.py index e310705..28fa055 100644 --- a/coverage/codeunit.py +++ b/coverage/codeunit.py @@ -34,19 +34,26 @@ def code_unit_factory(morfs, file_locator, omit_prefixes=None): code_units = [CodeUnit(morf, file_locator) for morf in morfs] if omit_prefixes: - prefixes = [file_locator.abs_file(p) for p in omit_prefixes] - filtered = [] - for cu in code_units: - for prefix in prefixes: - if cu.filename.startswith(prefix): - break - else: - filtered.append(cu) - - code_units = filtered + code_units = omit_filter(omit_prefixes, code_units) return code_units +def omit_filter(omit_prefixes, code_units): + """ + The filtering method removing any unwanted code_units + + Refactored out so you can easily monkeypatch if needs be + """ + prefixes = [file_locator.abs_file(p) for p in omit_prefixes] + filtered = [] + for cu in code_units: + for prefix in prefixes: + if cu.filename.startswith(prefix): + break + else: + filtered.append(cu) + + return filtered class CodeUnit(object): """Code unit: a filename or module. -- cgit v1.2.1 From 343f36c3fe555a196ca59268f71ea4c7838f4d1c Mon Sep 17 00:00:00 2001 From: David Stanek Date: Sat, 22 May 2010 08:33:18 -0400 Subject: fixed a bug caused in 8e1995c8156a - refactoring out omit_filter never really worked --- coverage/codeunit.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'coverage/codeunit.py') diff --git a/coverage/codeunit.py b/coverage/codeunit.py index 0170895..bb680e9 100644 --- a/coverage/codeunit.py +++ b/coverage/codeunit.py @@ -50,11 +50,11 @@ def code_unit_factory( code_units = filtered if omit_prefixes: - code_units = omit_filter(omit_prefixes, code_units) + code_units = omit_filter(omit_prefixes, code_units, file_locator) return code_units -def omit_filter(omit_prefixes, code_units): +def omit_filter(omit_prefixes, code_units, file_locator): """ The filtering method removing any unwanted code_units -- cgit v1.2.1