You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2011/04/27 15:15:50 UTC

svn commit: r1097104 - /wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java

Author: mgrigorov
Date: Wed Apr 27 13:15:50 2011
New Revision: 1097104

URL: http://svn.apache.org/viewvc?rev=1097104&view=rev
Log:
WICKET-3648 AbstractMarkupParser.removeComment() goes in endless loop when the comment is multi line

Add a unit test demonstrating the problem.


Modified:
    wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java

Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java?rev=1097104&r1=1097103&r2=1097104&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java Wed Apr 27 13:15:50 2011
@@ -16,12 +16,6 @@
  */
 package org.apache.wicket.markup;
 
-import java.io.IOException;
-import java.text.ParseException;
-import java.util.Locale;
-
-import junit.framework.Assert;
-
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.markup.html.border.Border;
 import org.apache.wicket.markup.html.pages.PageExpiredErrorPage;
@@ -35,6 +29,12 @@ import org.apache.wicket.util.string.Str
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.io.IOException;
+import java.text.ParseException;
+import java.util.Locale;
+
+import junit.framework.Assert;
+
 
 /**
  * Test cases for markup parser.
@@ -432,6 +432,29 @@ public final class MarkupParserTest exte
 	}
 
 	/**
+	 * <a href="https://issues.apache.org/jira/browse/WICKET-3648">WICKET-3648</a>
+	 * 
+	 * @throws IOException
+	 * @throws ResourceStreamNotFoundException
+	 */
+	public final void wicket3648testCommentsWithNestedElements() throws IOException,
+		ResourceStreamNotFoundException
+	{
+		tester.getApplication().getMarkupSettings().setStripComments(true);
+		final MarkupParser parser = new MarkupParser(
+// @formatter:off
+			"<span><!--[if lt IE 8 ]>\n"
+			+ "<script src='js/ie7.js'></script>\n" + 
+			"<![endif]--></span>"
+			// @formatter:on
+		);
+		IMarkupFragment markup = parser.parse();
+
+		RawMarkup raw = (RawMarkup)markup.get(0);
+		assertEquals("<span></span>", raw.toString());
+	}
+
+	/**
 	 * 
 	 * @throws IOException
 	 * @throws ResourceStreamNotFoundException