public void checkJParse(String filename) throws Exception { URL testFolderURL = TestParser.class.getClassLoader().getResource(SAMPLES_DIR); String testFolder = testFolderURL.getPath(); String J_pathToFile = testFolder + "/" + filename; ANTLRInputStream input = new ANTLRFileStream(J_pathToFile); JLexer l = new JLexer(input); TokenStream tokens = new CommonTokenStream(l); JParser parser = new JParser(tokens); parser.removeErrorListeners(); int[] errors = {0}; parser.addErrorListener( new BaseErrorListener() { @Override public void syntaxError( Recognizer<?, ?> recognizer, Object offendingSymbol, int line, int charPositionInLine, String msg, RecognitionException e) { errors[0]++; } }); ParserRuleContext tree = parser.file(); assertTrue(tree != null); assertEquals(Token.EOF, tree.getStop().getType()); assertEquals(0, errors[0]); }