import antlr3 import testbase import unittest class t039labels(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, b, c, 1, 2 A FOOBAR GNU1 A BLARZ' ) lexer = self.getLexer(cStream) tStream = antlr3.CommonTokenStream(lexer) parser = self.getParser(tStream) ids, w = parser.a() assert len(ids) == 6, ids assert ids[0].text == 'a', ids[0] assert ids[1].text == 'b', ids[1] assert ids[2].text == 'c', ids[2] assert ids[3].text == '1', ids[3] assert ids[4].text == '2', ids[4] assert ids[5].text == 'A', ids[5] assert w.text == 'GNU1', w if __name__ == '__main__': unittest.main()