match: override visitdir() in nevermatcher to return False
When we changed basematcher.visitdir() in cf15c3cc304c (match: make
base matcher return True for visitdir, 2017-07-14), we forgot to add
an override in nevermatcher. This led to tests failing in narrowhg.
As Durham pointed out, it's high time to add unit tests for the
matcher, so this patch also adds a first unit test.
Differential Revision: https://phab.mercurial-scm.org/D151
--- a/mercurial/match.py Fri Jul 21 11:26:51 2017 -0500
+++ b/mercurial/match.py Wed Jul 19 14:50:50 2017 -0700
@@ -363,6 +363,9 @@
def prefix(self):
return True
+ def visitdir(self, dir):
+ return False
+
def __repr__(self):
return '<nevermatcher>'
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-match.py Wed Jul 19 14:50:50 2017 -0700
@@ -0,0 +1,19 @@
+from __future__ import absolute_import
+
+import unittest
+
+import silenttestrunner
+
+from mercurial import (
+ match as matchmod,
+)
+
+class NeverMatcherTests(unittest.TestCase):
+
+ def testVisitdir(self):
+ m = matchmod.nevermatcher('', '')
+ self.assertFalse(m.visitdir('.'))
+ self.assertFalse(m.visitdir('dir'))
+
+if __name__ == '__main__':
+ silenttestrunner.main(__name__)