示例#1
0
    def test5(self, compile):
        a = _('a')
        b = _('b')

        r = compile(a | b)

        self.assertTrue(r('a'))
        self.assertTrue(r('b'))
        self.assertFalse(r('d'))
示例#2
0
    def test10(self, compile):
        a = _('a')

        r = compile(rep(a, max=3))
        self._true(r(''), r('a'), r('aa'), r('aaa'))
        self._false(r('aaaa'), r('b'), r('bb'), r('bbb'), r('aaab'))

        r = compile(rep(a, min=3))
        self._true(r('aaa'), r('aaaa'), r('a' * 10), r('a' * 100))
        self._false(r(''), r('a'), r('aa'), r('aab'), r('baa'), r('aaaab'))

        r = compile(rep(a, min=5, max=8))
        self._true(r('a' * 5), r('a' * 6), r('a' * 7), r('a' * 8))
        self._false(r(''), r('a'), r('aa'), r('aaa'), r('aaaa'), r('aaaaaab'))

        r = compile(rep(a))
        self._true(r(''), r('a'), r('a' * 10), r('a' * 100))
        self._false(r('b'), r('b' * 3), r(('a' * 10) + 'b'),
                    r(('a' * 100) + 'b'))
示例#3
0
    def test4(self, compile):
        a = _('a')

        self.assertTrue(compile(c(a, a, a, a))('aaaa'))
示例#4
0
 def complex_n(n):
     return c(*[h01(_('a'))
                for i in range(n)] + [_('a') for i in range(n)])
示例#5
0
 def test2(self, compile):
     self.assertTrue(
         compile(c(h01(_('b')), h01(_('a')), _('b'), _('a')))('ba'))
示例#6
0
 def test1(self, compile):
     self.assertTrue(compile(_('a'))('a'))