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

login
register
mail settings
Submitter phabricator
Date July 19, 2017, 10:06 p.m.
Message ID <differential-rev-PHID-DREV-gvu76zx5ny6t5al2wzka-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/22529/
State Superseded, archived
Headers show

Comments

phabricator - July 19, 2017, 10:06 p.m.
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




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

To: martinvonz, #hg-reviewers
Cc: mercurial-devel
phabricator - July 21, 2017, 10:19 a.m.
durham accepted this revision.
durham added a comment.


  Nice!

REPOSITORY
  rHG Mercurial

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

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

To: martinvonz, #hg-reviewers, durham
Cc: durham, mercurial-devel
phabricator - July 25, 2017, 2:55 p.m.
durin42 accepted this revision.
durin42 added a comment.
This revision is now accepted and ready to land.


  Seems fine for stable. Queued.

REPOSITORY
  rHG Mercurial

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

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

Patch

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>'