/** * Creates a new token parser. * * @param srcHtml * the input HTML source. * @param readingPosition * the offset within the html source to start parsing at. */ public HtmlTokenParser(CharSequence srcHtml, int readingPosition) { this.caret = new Caret(srcHtml, readingPosition); this.srcHtml = srcHtml; resetState(); //NOPMD }
@Test public void testMultipleTagsParsing() { parser = new HtmlTokenParser("<html> <head/>", 0); Result resultA = parser.parseToken(); assertThat(resultA, equalTo(Result.SUCCESS)); assertThat(parser.getParsedTokenType(), equalTo(Token.START_TAG)); assertThat(parser.getTagType(), equalTo((CharSequence) "html")); parser.resetState(); Result resultB = parser.parseToken(); assertThat(resultB, equalTo(Result.SUCCESS)); assertThat(parser.getParsedTokenType(), equalTo(Token.STANDALONE_TAG)); assertThat(parser.getTagType(), equalTo((CharSequence) "head")); }
tokenParser.resetState(); // get ready for parsing the next token