[Htmlparser-cvs] htmlparser/src/org/htmlparser/tests/tagTests OptionTagTest.java,1.18,1.19 SelectTag
Brought to you by:
derrickoswald
From: <der...@us...> - 2003-05-31 17:48:24
|
Update of /cvsroot/htmlparser/htmlparser/src/org/htmlparser/tests/tagTests In directory sc8-pr-cvs1:/tmp/cvs-serv11008/org/htmlparser/tests/tagTests Modified Files: OptionTagTest.java SelectTagTest.java TextareaTagTest.java Log Message: Fixed bug #745566 StackOverflowError on select with too many unclosed options. Replicated the missing end tag detection of the bullet list scanner into the form scanners. This isn't ideal, but it seems to work. Added test case testUnclosedOptions in FormScannerTest that reads http://htmlparser.sourceforge.net/test/overflowpage.html. Note: this test only failed on Windows, prior to the fix. Picked up missing scanner tests in AllTests. The HtmlTest file showed that title tags weren't being scanned, which I fixed with a kludge. Added order list types to BulletListScanner match tags. Index: OptionTagTest.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/tests/tagTests/OptionTagTest.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** OptionTagTest.java 26 May 2003 00:26:50 -0000 1.18 --- OptionTagTest.java 31 May 2003 17:48:20 -0000 1.19 *************** *** 32,35 **** --- 32,37 ---- package org.htmlparser.tests.tagTests; + import java.util.Stack; + import org.htmlparser.scanners.OptionTagScanner; import org.htmlparser.tags.OptionTag; *************** *** 63,67 **** super.setUp(); createParser(testHTML); ! parser.addScanner(new OptionTagScanner("-option")); parseAndAssertNodeCount(11); } --- 65,69 ---- super.setUp(); createParser(testHTML); ! parser.addScanner(new OptionTagScanner("-option", new Stack ())); parseAndAssertNodeCount(11); } Index: SelectTagTest.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/tests/tagTests/SelectTagTest.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** SelectTagTest.java 26 May 2003 00:26:50 -0000 1.19 --- SelectTagTest.java 31 May 2003 17:48:20 -0000 1.20 *************** *** 32,35 **** --- 32,37 ---- package org.htmlparser.tests.tagTests; + import java.util.Stack; + import org.htmlparser.scanners.OptionTagScanner; import org.htmlparser.scanners.SelectTagScanner; *************** *** 62,67 **** super.setUp(); createParser(testHTML); ! parser.addScanner(new SelectTagScanner("-s")); ! parser.addScanner(new OptionTagScanner("-o")); parseAndAssertNodeCount(1); assertTrue("Node 1 should be Select Tag",node[0] instanceof SelectTag); --- 64,69 ---- super.setUp(); createParser(testHTML); ! parser.addScanner(new SelectTagScanner("-s", new Stack ())); ! parser.addScanner(new OptionTagScanner("-o", new Stack ())); parseAndAssertNodeCount(1); assertTrue("Node 1 should be Select Tag",node[0] instanceof SelectTag); *************** *** 72,80 **** { assertStringEquals("HTML String","<SELECT NAME=\"Nominees\">\r\n"+ ! "<OPTION VALUE=\"Spouse\">Spouse</OPTION>"+ "<OPTION VALUE=\"Father\"></OPTION>\r\n"+ ! "<OPTION VALUE=\"Mother\">Mother\r\n</OPTION>" + "<OPTION VALUE=\"Son\">\r\nSon\r\n</OPTION>"+ ! "<OPTION VALUE=\"Daughter\">\r\nDaughter\r\n</OPTION>"+ "<OPTION VALUE=\"Nephew\">\r\nNephew</OPTION>\r\n"+ "<OPTION VALUE=\"Niece\">Niece\r\n</OPTION>"+ --- 74,82 ---- { assertStringEquals("HTML String","<SELECT NAME=\"Nominees\">\r\n"+ ! "<OPTION VALUE=\"Spouse\">Spouse</OPTION>\r\n"+ "<OPTION VALUE=\"Father\"></OPTION>\r\n"+ ! "<OPTION VALUE=\"Mother\">Mother\r\n</OPTION>\r\n" + "<OPTION VALUE=\"Son\">\r\nSon\r\n</OPTION>"+ ! "<OPTION VALUE=\"Daughter\">\r\nDaughter\r\n</OPTION>\r\n"+ "<OPTION VALUE=\"Nephew\">\r\nNephew</OPTION>\r\n"+ "<OPTION VALUE=\"Niece\">Niece\r\n</OPTION>"+ Index: TextareaTagTest.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/tests/tagTests/TextareaTagTest.java,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** TextareaTagTest.java 26 May 2003 00:26:51 -0000 1.17 --- TextareaTagTest.java 31 May 2003 17:48:21 -0000 1.18 *************** *** 29,32 **** --- 29,34 ---- package org.htmlparser.tests.tagTests; + import java.util.Stack; + import org.htmlparser.scanners.TextareaTagScanner; import org.htmlparser.tags.TextareaTag; *************** *** 55,59 **** super.setUp(); createParser(testHTML); ! parser.addScanner(new TextareaTagScanner("-t")); parseAndAssertNodeCount(5); } --- 57,61 ---- super.setUp(); createParser(testHTML); ! parser.addScanner(new TextareaTagScanner("-t", new Stack ())); parseAndAssertNodeCount(5); } |