Пример #1
0
    def testEOF(self):
        """TreePatternLexer(): EOF"""

        lexer = TreePatternLexer('  \n \r \t ')
        type = lexer.nextToken()
        self.assertEqual(type, EOF)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #2
0
    def testID(self):
        """TreePatternLexer(): ID"""

        lexer = TreePatternLexer('_foo12_bar')
        type = lexer.nextToken()
        self.failUnlessEqual(type, ID)
        self.failUnlessEqual(lexer.sval, '_foo12_bar')
        self.failUnlessEqual(lexer.error, False)
Пример #3
0
    def testDot(self):
        """TreePatternLexer(): '.'"""

        lexer = TreePatternLexer('.')
        type = lexer.nextToken()
        self.assertEqual(type, DOT)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #4
0
    def testEnd(self):
        """TreePatternLexer(): ')'"""

        lexer = TreePatternLexer(')')
        type = lexer.nextToken()
        self.assertEqual(type, END)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #5
0
    def testPercent(self):
        """TreePatternLexer(): '%'"""

        lexer = TreePatternLexer('%')
        type = lexer.nextToken()
        self.assertEqual(type, PERCENT)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #6
0
    def testError(self):
        """TreePatternLexer(): error"""

        lexer = TreePatternLexer('1')
        type = lexer.nextToken()
        self.assertEqual(type, EOF)
        self.assertEqual(lexer.sval, '')
        self.assertTrue(lexer.error)
Пример #7
0
    def testBegin(self):
        """TreePatternLexer(): '('"""

        lexer = TreePatternLexer('(')
        type = lexer.nextToken()
        self.assertEqual(type, BEGIN)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #8
0
    def testEOF(self):
        """TreePatternLexer(): EOF"""

        lexer = TreePatternLexer('  \n \r \t ')
        type = lexer.nextToken()
        self.assertEqual(type, EOF)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #9
0
    def testARG(self):
        """TreePatternLexer(): ARG"""

        lexer = TreePatternLexer(r'[ \]bla\n]')
        type = lexer.nextToken()
        self.assertEqual(type, ARG)
        self.assertEqual(lexer.sval, r' ]bla\n')
        self.assertFalse(lexer.error)
Пример #10
0
    def testDot(self):
        """TreePatternLexer(): '.'"""

        lexer = TreePatternLexer('.')
        type = lexer.nextToken()
        self.assertEqual(type, DOT)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #11
0
    def testColon(self):
        """TreePatternLexer(): ':'"""

        lexer = TreePatternLexer(':')
        type = lexer.nextToken()
        self.assertEqual(type, COLON)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #12
0
    def testPercent(self):
        """TreePatternLexer(): '%'"""

        lexer = TreePatternLexer('%')
        type = lexer.nextToken()
        self.assertEqual(type, PERCENT)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #13
0
    def testEnd(self):
        """TreePatternLexer(): ')'"""

        lexer = TreePatternLexer(')')
        type = lexer.nextToken()
        self.assertEqual(type, END)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #14
0
    def testBegin(self):
        """TreePatternLexer(): '('"""

        lexer = TreePatternLexer('(')
        type = lexer.nextToken()
        self.assertEqual(type, BEGIN)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #15
0
    def testColon(self):
        """TreePatternLexer(): ':'"""

        lexer = TreePatternLexer(':')
        type = lexer.nextToken()
        self.assertEqual(type, COLON)
        self.assertEqual(lexer.sval, '')
        self.assertFalse(lexer.error)
Пример #16
0
    def testID(self):
        """TreePatternLexer(): ID"""

        lexer = TreePatternLexer('_foo12_bar')
        type = lexer.nextToken()
        self.assertEqual(type, ID)
        self.assertEqual(lexer.sval, '_foo12_bar')
        self.assertFalse(lexer.error)
Пример #17
0
    def testError(self):
        """TreePatternLexer(): error"""

        lexer = TreePatternLexer('1')
        type = lexer.nextToken()
        self.assertEqual(type, EOF)
        self.assertEqual(lexer.sval, '')
        self.assertTrue(lexer.error)
Пример #18
0
    def testPercent(self):
        """TreePatternLexer(): '%'"""

        lexer = TreePatternLexer('%')
        type = lexer.nextToken()
        self.failUnlessEqual(type, PERCENT)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, False)
Пример #19
0
    def testBegin(self):
        """TreePatternLexer(): '('"""

        lexer = TreePatternLexer('(')
        type = lexer.nextToken()
        self.failUnlessEqual(type, BEGIN)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, False)
Пример #20
0
    def testColon(self):
        """TreePatternLexer(): ':'"""

        lexer = TreePatternLexer(':')
        type = lexer.nextToken()
        self.failUnlessEqual(type, COLON)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, False)
Пример #21
0
    def testDot(self):
        """TreePatternLexer(): '.'"""

        lexer = TreePatternLexer('.')
        type = lexer.nextToken()
        self.failUnlessEqual(type, DOT)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, False)
Пример #22
0
    def testEOF(self):
        """TreePatternLexer(): EOF"""

        lexer = TreePatternLexer('  \n \r \t ')
        type = lexer.nextToken()
        self.failUnlessEqual(type, EOF)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, False)
Пример #23
0
    def testError(self):
        """TreePatternLexer(): error"""

        lexer = TreePatternLexer('1')
        type = lexer.nextToken()
        self.failUnlessEqual(type, EOF)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, True)
Пример #24
0
    def testARG(self):
        """TreePatternLexer(): ARG"""

        lexer = TreePatternLexer('[ \\]bla\\n]')
        type = lexer.nextToken()
        self.failUnlessEqual(type, ARG)
        self.failUnlessEqual(lexer.sval, ' ]bla\\n')
        self.failUnlessEqual(lexer.error, False)
Пример #25
0
    def testEnd(self):
        """TreePatternLexer(): ')'"""

        lexer = TreePatternLexer(')')
        type = lexer.nextToken()
        self.failUnlessEqual(type, END)
        self.failUnlessEqual(lexer.sval, '')
        self.failUnlessEqual(lexer.error, False)
Пример #26
0
 def testLabel(self):
     """TreePatternParser: '(%a:A)'"""
     lexer = TreePatternLexer('(%a:A)')
     parser = TreePatternParser(lexer, self.wizard, TreePatternTreeAdaptor())
     tree = parser.pattern()
     self.failUnless(isinstance(tree, TreePattern))
     self.failUnlessEqual(tree.label, 'a')
Пример #27
0
 def testNil(self):
     """TreePatternParser: 'nil'"""
     lexer = TreePatternLexer('nil')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.failUnless(isinstance(tree, CommonTree))
     self.failUnlessEqual(tree.getType(), 0)
     self.failUnlessEqual(tree.getText(), None)
Пример #28
0
 def testSingleNodeWithArg(self):
     """TreePatternParser: 'ID[foo]'"""
     lexer = TreePatternLexer('ID[foo]')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.failUnless(isinstance(tree, CommonTree))
     self.failUnlessEqual(tree.getType(), 10)
     self.failUnlessEqual(tree.getText(), 'foo')
Пример #29
0
 def testNil(self):
     """TreePatternParser: 'nil'"""
     lexer = TreePatternLexer('nil')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.assertIsInstance(tree, CommonTree)
     self.assertEqual(tree.getType(), 0)
     self.assertIsNone(tree.getText())
Пример #30
0
 def testSingleNode(self):
     """TreePatternParser: 'ID'"""
     lexer = TreePatternLexer('ID')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.assertIsInstance(tree, CommonTree)
     self.assertEqual(tree.getType(), 10)
     self.assertEqual(tree.getText(), 'ID')
Пример #31
0
 def testSingleLevelTree(self):
     """TreePatternParser: '(A B)'"""
     lexer = TreePatternLexer('(A B)')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.failUnless(isinstance(tree, CommonTree))
     self.failUnlessEqual(tree.getType(), 5)
     self.failUnlessEqual(tree.getText(), 'A')
     self.failUnlessEqual(tree.getChildCount(), 1)
     self.failUnlessEqual(tree.getChild(0).getType(), 6)
     self.failUnlessEqual(tree.getChild(0).getText(), 'B')
Пример #32
0
 def testError2(self):
     """TreePatternParser: '()'"""
     lexer = TreePatternLexer('()')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.assertIsNone(tree)
Пример #33
0
 def testWildcard(self):
     """TreePatternParser: '(.)'"""
     lexer = TreePatternLexer('(.)')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.failUnless(isinstance(tree, WildcardTreePattern))
Пример #34
0
 def testError3(self):
     """TreePatternParser: '(A ])'"""
     lexer = TreePatternLexer('(A ])')
     parser = TreePatternParser(lexer, self.wizard, self.adaptor)
     tree = parser.pattern()
     self.failUnless(tree is None)