D151: match: override visitdir() in nevermatcher to return False

martinvonz (Martin von Zweigbergk) phabricator at mercurial-scm.org
Wed Jul 19 22:06:40 UTC 2017


martinvonz created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  When we changed basematcher.visitdir() in https://phab.mercurial-scm.org/rHGcf15c3cc304ca41dd8196c05590b345a4ec558aa (match: make
  base matcher return True for visitdir, 2017-07-14), we forgot to add
  an override in nevermatcher. This lead 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.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D151

AFFECTED FILES
  mercurial/match.py
  tests/test-match.py

CHANGE DETAILS

diff --git a/tests/test-match.py b/tests/test-match.py
new file mode 100644
--- /dev/null
+++ b/tests/test-match.py
@@ -0,0 +1,18 @@
+from __future__ import absolute_import
+
+import silenttestrunner
+import unittest
+
+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__)
diff --git a/mercurial/match.py b/mercurial/match.py
--- a/mercurial/match.py
+++ b/mercurial/match.py
@@ -363,6 +363,9 @@
     def prefix(self):
         return True
 
+    def visitdir(self, dir):
+        return False
+
     def __repr__(self):
         return '<nevermatcher>'
 



EMAIL PREFERENCES
  https://phab.mercurial-scm.org/settings/panel/emailpreferences/

To: martinvonz, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list