@Test public void should_return_EndOfDefinition() throws ValidationReaderException { Lexer lex = new Lexer("x1 23"); lex.nextLexeme(); lex.nextLexeme(); assertThat(EOD, "", lex.nextLexeme()); }
@Test public void should_print_at_4th_letter() throws ValidationReaderException { Lexer lexer = new Lexer("(3x + y) * 3"); // ( lexer.nextLexeme(); // 3 lexer.nextLexeme(); // x lexer.nextLexeme(); // + assertEquals("(3x [+] y) * 3", lexer.printPosition()); }
@Test public void should_print_at_before_last_letter() throws ValidationReaderException { Lexer lexer = new Lexer("(3x + y) * 3"); // ( lexer.nextLexeme(); // 3 lexer.nextLexeme(); // x lexer.nextLexeme(); // + lexer.nextLexeme(); // y lexer.nextLexeme(); // ) lexer.nextLexeme(); // * lexer.nextLexeme(); // 3 assertEquals("(3x + y) * [3]", lexer.printPosition()); }
private Lexeme getLexeme(Lexer lex) throws ValidationReaderException { Lexeme lexeme = null; if (lex.hasLexeme()) { lexeme = lex.nextLexeme(); } return lexeme; }
private List<Lexeme> getLexemes(Lexer lex) throws ValidationReaderException { List<Lexeme> lexemes = new ArrayList<Lexeme>(); while (lex.hasLexeme()) { lexemes.add(lex.nextLexeme()); } return lexemes; }
@Test public void should_print_at_last_letter() throws ValidationReaderException { Lexer lexer = new Lexer("(3x + y) * 3"); while (lexer.hasLexeme()) { lexer.nextLexeme(); } assertEquals("(3x + y) * 3[]", lexer.printPosition()); }