Ejemplo n.º 1
0
 def testPreprocess ( self ):
     parser = Parser()
     syntaxes = ("ab", "abc", \
                 "a(b)c", "a(bc)", \
                 "a*b", "a*(b)c", "a(b)*c", "abc*", \
                 "a|b", "a(b|c)", "(a|b)c", "(ab|cd)*e", )
     results  = ("a\0b", "a\0b\0c", \
                 "a\0(b)\0c", "a\0(b\0c)", \
                 "a*\0b", "a*\0(b)\0c", "a\0(b)*\0c", "a\0b\0c*", \
                 "a|b", "a\0(b|c)", "(a|b)\0c", "(a\0b|c\0d)*\0e", )
     betterSyntaxes = \
         tuple(map(lambda s: ''.join(Parser.tokenGenerator(parser, s)), syntaxes))
     self.assertEqual(\
         betterSyntaxes, results, \
         "Pre-processed syntaxes: " + str(betterSyntaxes))