示例#1
0
 def testVisitchildrensetM2always(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.alwaysmatcher(b'', b'')
     im = matchmod.intersectmatchers(m1, m2)
     # im should be equivalent to a alwaysmatcher.
     self.assertEqual(im.visitchildrenset(b'.'), b'all')
     self.assertEqual(im.visitchildrenset(b'dir'), b'all')
     self.assertEqual(im.visitchildrenset(b'dir/subdir'), b'all')
     self.assertEqual(im.visitchildrenset(b'dir/subdir/z'), b'all')
     self.assertEqual(im.visitchildrenset(b'dir/foo'), b'all')
     self.assertEqual(im.visitchildrenset(b'dir/subdir/x'), b'all')
     self.assertEqual(im.visitchildrenset(b'folder'), b'all')
示例#2
0
 def testVisitchildrensetM2always(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.alwaysmatcher(b'', b'')
     um = matchmod.unionmatcher([m1, m2])
     # um should be equivalent to a alwaysmatcher.
     self.assertEqual(um.visitchildrenset(b'.'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/subdir'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/subdir/z'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/foo'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/subdir/x'), b'all')
     self.assertEqual(um.visitchildrenset(b'folder'), b'all')
示例#3
0
 def testVisitchildrensetM2always(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.alwaysmatcher(b'', b'')
     dm = matchmod.differencematcher(m1, m2)
     # dm should be equivalent to a nevermatcher.
     self.assertEqual(dm.visitchildrenset(b'.'), set())
     self.assertEqual(dm.visitchildrenset(b'dir'), set())
     self.assertEqual(dm.visitchildrenset(b'dir/subdir'), set())
     self.assertEqual(dm.visitchildrenset(b'dir/subdir/z'), set())
     self.assertEqual(dm.visitchildrenset(b'dir/foo'), set())
     self.assertEqual(dm.visitchildrenset(b'dir/subdir/x'), set())
     self.assertEqual(dm.visitchildrenset(b'folder'), set())
示例#4
0
 def testVisitchildrensetM2SubdirPrefix(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.match(b'', b'', include=[b'path:dir/subdir'])
     um = matchmod.unionmatcher([m1, m2])
     self.assertEqual(um.visitchildrenset(b'.'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/subdir'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/foo'), b'all')
     self.assertEqual(um.visitchildrenset(b'folder'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/subdir/z'), b'all')
     self.assertEqual(um.visitchildrenset(b'dir/subdir/x'), b'all')
示例#5
0
 def testVisitchildrensetM2SubdirPrefix(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.match(b'', b'', include=[b'path:dir/subdir'])
     im = matchmod.intersectmatchers(m1, m2)
     self.assertEqual(im.visitchildrenset(b'.'), {b'dir'})
     self.assertEqual(im.visitchildrenset(b'dir'), {b'subdir'})
     self.assertEqual(im.visitchildrenset(b'dir/subdir'), b'all')
     self.assertEqual(im.visitchildrenset(b'dir/foo'), set())
     self.assertEqual(im.visitchildrenset(b'folder'), set())
     # OPT: We should probably return 'all' for these
     self.assertEqual(im.visitchildrenset(b'dir/subdir/z'), b'this')
     self.assertEqual(im.visitchildrenset(b'dir/subdir/x'), b'this')
示例#6
0
 def testVisitdirM2never(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.nevermatcher(b'', b'')
     im = matchmod.intersectmatchers(m1, m2)
     # im should be equivalent to a nevermatcher.
     self.assertFalse(im.visitdir(b'.'))
     self.assertFalse(im.visitdir(b'dir'))
     self.assertFalse(im.visitdir(b'dir/subdir'))
     self.assertFalse(im.visitdir(b'dir/subdir/z'))
     self.assertFalse(im.visitdir(b'dir/foo'))
     self.assertFalse(im.visitdir(b'dir/subdir/x'))
     self.assertFalse(im.visitdir(b'folder'))
示例#7
0
 def testVisitdirM2SubdirPrefix(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.match(b'', b'', patterns=[b'path:dir/subdir'])
     im = matchmod.intersectmatchers(m1, m2)
     self.assertEqual(im.visitdir(b'.'), True)
     self.assertEqual(im.visitdir(b'dir'), True)
     self.assertEqual(im.visitdir(b'dir/subdir'), b'all')
     self.assertFalse(im.visitdir(b'dir/foo'))
     self.assertFalse(im.visitdir(b'folder'))
     # OPT: We should probably return 'all' for these; we don't because
     # patternmatcher.visitdir() (our m2) doesn't return 'all' for subdirs of
     # an 'all' pattern, just True.
     self.assertEqual(im.visitdir(b'dir/subdir/z'), True)
     self.assertEqual(im.visitdir(b'dir/subdir/x'), True)
示例#8
0
 def testVisitchildrensetM2SubdirPrefix(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.match(b'', b'', patterns=[b'path:dir/subdir'])
     dm = matchmod.differencematcher(m1, m2)
     self.assertEqual(dm.visitchildrenset(b'.'), b'this')
     self.assertEqual(dm.visitchildrenset(b'dir'), b'this')
     self.assertEqual(dm.visitchildrenset(b'dir/subdir'), set())
     self.assertEqual(dm.visitchildrenset(b'dir/foo'), b'all')
     self.assertEqual(dm.visitchildrenset(b'folder'), b'all')
     # OPT: We should probably return set() for these; we don't because
     # patternmatcher.visitdir() (our m2) doesn't return 'all' for subdirs of
     # an 'all' pattern, just 'this'.
     self.assertEqual(dm.visitchildrenset(b'dir/subdir/z'), b'this')
     self.assertEqual(dm.visitchildrenset(b'dir/subdir/x'), b'this')
示例#9
0
 def testVisitdirM2never(self):
     m1 = matchmod.alwaysmatcher(b'', b'')
     m2 = matchmod.nevermatcher(b'', b'')
     dm = matchmod.differencematcher(m1, m2)
     # dm should be equivalent to a alwaysmatcher. OPT: if m2 is a
     # nevermatcher, we could return 'all' for these.
     #
     # We're testing Equal-to-True instead of just 'assertTrue' since
     # assertTrue does NOT verify that it's a bool, just that it's truthy.
     # While we may want to eventually make these return 'all', they should
     # not currently do so.
     self.assertEqual(dm.visitdir(b'.'), True)
     self.assertEqual(dm.visitdir(b'dir'), True)
     self.assertEqual(dm.visitdir(b'dir/subdir'), True)
     self.assertEqual(dm.visitdir(b'dir/subdir/z'), True)
     self.assertEqual(dm.visitdir(b'dir/foo'), True)
     self.assertEqual(dm.visitdir(b'dir/subdir/x'), True)
     self.assertEqual(dm.visitdir(b'folder'), True)
示例#10
0
 def testVisitchildrenset(self):
     m = matchmod.alwaysmatcher(b'', b'')
     self.assertEqual(m.visitchildrenset(b'.'), b'all')
     self.assertEqual(m.visitchildrenset(b'dir'), b'all')