| import antlr3 |
| import testbase |
| import unittest |
| |
| |
| class t037rulePropertyRef(testbase.ANTLRTest): |
| def setUp(self): |
| self.compileGrammar() |
| |
| |
| def lexerClass(self, base): |
| class TLexer(base): |
| def recover(self, input, re): |
| # no error recovery yet, just crash! |
| raise |
| |
| return TLexer |
| |
| |
| def parserClass(self, base): |
| class TParser(base): |
| def recover(self, input, re): |
| # no error recovery yet, just crash! |
| raise |
| |
| return TParser |
| |
| |
| def testValid1(self): |
| cStream = antlr3.StringStream(' a a a a ') |
| |
| lexer = self.getLexer(cStream) |
| tStream = antlr3.CommonTokenStream(lexer) |
| parser = self.getParser(tStream) |
| start, stop, text = parser.a().bla |
| |
| # first token of rule b is the 2nd token (counting hidden tokens) |
| assert start.index == 1, start |
| |
| # first token of rule b is the 7th token (counting hidden tokens) |
| assert stop.index == 7, stop |
| |
| assert text == "a a a a", text |
| |
| |
| if __name__ == '__main__': |
| unittest.main() |