From 8cc74be62e16efa2773ae203b6bec7ab637e84a4 Mon Sep 17 00:00:00 2001 From: Dan Christensen Date: Fri, 7 Feb 2014 16:27:18 -0500 Subject: [PATCH] Simplify IncludePattern and add a few more tests to PatternTestCase. --- attic/helpers.py | 5 ++--- attic/testsuite/helpers.py | 3 +++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/attic/helpers.py b/attic/helpers.py index 52fbdc5ec..b44d51b48 100644 --- a/attic/helpers.py +++ b/attic/helpers.py @@ -165,11 +165,10 @@ class IncludePattern: path match as well. A trailing slash makes no difference. """ def __init__(self, pattern): - self.pattern = pattern.rstrip(os.path.sep) + self.pattern = pattern.rstrip(os.path.sep)+os.path.sep def match(self, path): - return (path == self.pattern - or path.startswith(self.pattern+os.path.sep)) + return (path+os.path.sep).startswith(self.pattern) def __repr__(self): return '%s(%s)' % (type(self), self.pattern) diff --git a/attic/testsuite/helpers.py b/attic/testsuite/helpers.py index 6469b65e6..792f401ab 100644 --- a/attic/testsuite/helpers.py +++ b/attic/testsuite/helpers.py @@ -61,6 +61,9 @@ def evaluate(self, paths, excludes): return [path for path in self.files if not exclude_path(path, patterns)] def test(self): + self.assert_equal(self.evaluate(['/'], []), self.files) + self.assert_equal(self.evaluate([], []), self.files) + self.assert_equal(self.evaluate(['/'], ['/h']), self.files) self.assert_equal(self.evaluate(['/'], ['/home']), ['/etc/passwd', '/etc/hosts', '/var/log/messages', '/var/log/dmesg']) self.assert_equal(self.evaluate(['/'], ['/home/']),