You are viewing a plain text version of this content. The canonical link for it is here.
Posted to doxia-commits@maven.apache.org by lt...@apache.org on 2011/02/24 14:55:22 UTC
svn commit: r1074151 -
/maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/test/java/org/apache/maven/doxia/module/apt/AptParserTest.java
Author: ltheussl
Date: Thu Feb 24 13:55:21 2011
New Revision: 1074151
URL: http://svn.apache.org/viewvc?rev=1074151&view=rev
Log:
ad DOXIA-397: add a test to demonstrate how the parser handles special characters in anchors and links
Modified:
maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/test/java/org/apache/maven/doxia/module/apt/AptParserTest.java
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/test/java/org/apache/maven/doxia/module/apt/AptParserTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/test/java/org/apache/maven/doxia/module/apt/AptParserTest.java?rev=1074151&r1=1074150&r2=1074151&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/test/java/org/apache/maven/doxia/module/apt/AptParserTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/test/java/org/apache/maven/doxia/module/apt/AptParserTest.java Thu Feb 24 13:55:21 2011
@@ -581,6 +581,57 @@ public class AptParserTest
}
/** @throws Exception */
+ public void testSpacesAndBracketsInAnchors()
+ throws Exception
+ {
+ final String text = " {Anchor with spaces (and brackets)}" + EOL
+ + " Link to {{Anchor with spaces (and brackets)}}" + EOL
+ + " {{{http://fake.api#method(with, args)}method(with, args)}}" + EOL;
+
+ final SinkEventTestingSink sink = new SinkEventTestingSink();
+
+ parser.parse( text, sink );
+
+ Iterator it = sink.getEventList().iterator();
+
+ assertEquals( "head", ( (SinkEventElement) it.next() ).getName() );
+ assertEquals( "head_", ( (SinkEventElement) it.next() ).getName() );
+ assertEquals( "body", ( (SinkEventElement) it.next() ).getName() );
+ assertEquals( "paragraph", ( (SinkEventElement) it.next() ).getName() );
+
+ SinkEventElement event = (SinkEventElement) it.next();
+ assertEquals( "anchor", event.getName() );
+ assertEquals( "Anchor_with_spaces_and_brackets", event.getArgs()[0] );
+ event = (SinkEventElement) it.next();
+ assertEquals( "text", event.getName() );
+ assertEquals( "Anchor with spaces (and brackets)", event.getArgs()[0] );
+ assertEquals( "anchor_", ( (SinkEventElement) it.next() ).getName() );
+
+ assertEquals( "text", ( (SinkEventElement) it.next() ).getName() );
+ event = (SinkEventElement) it.next();
+ assertEquals( "link", event.getName() );
+ assertEquals( "#Anchor_with_spaces_and_brackets", event.getArgs()[0] );
+ event = (SinkEventElement) it.next();
+ assertEquals( "text", event.getName() );
+ assertEquals( "Anchor with spaces (and brackets)", event.getArgs()[0] );
+ assertEquals( "link_", ( (SinkEventElement) it.next() ).getName() );
+
+ assertEquals( "text", ( (SinkEventElement) it.next() ).getName() );
+ event = (SinkEventElement) it.next();
+ assertEquals( "link", event.getName() );
+ assertEquals( "http://fake.api#method(with, args)", event.getArgs()[0] );
+ event = (SinkEventElement) it.next();
+ assertEquals( "text", event.getName() );
+ assertEquals( "method(with, args)", event.getArgs()[0] );
+ assertEquals( "link_", ( (SinkEventElement) it.next() ).getName() );
+
+ assertEquals( "paragraph_", ( (SinkEventElement) it.next() ).getName() );
+ assertEquals( "body_", ( (SinkEventElement) it.next() ).getName() );
+
+ assertFalse( it.hasNext() );
+ }
+
+ /** @throws Exception */
public void testSectionTitleAnchors()
throws Exception
{