Author: ltheussl Date: Sun May 24 05:13:52 2009 New Revision: 778086 URL: http://svn.apache.org/viewvc?rev=778086&view=rev Log: Add test case for DOXIA-323: special characters in tables are not parsed correctly. Please fix me! :)
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=778086&r1=778085&r2=778086&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 Sun May 24 05:13:52 2009 @@ -549,6 +549,51 @@ assertFalse( it.hasNext() ); } + /** @throws Exception */ + public void testSpecialCharactersInTables() + throws Exception + { + // DOXIA-323 + String text = + " \\~ \\= \\- \\+ \\* \\[ \\] \\< \\> \\{ \\} \\\\" + EOL + + EOL + + "*--------------------------------------------------+---------------+" + EOL + + "| \\~ \\= \\- \\+ \\* \\[ \\] \\< \\> \\{ \\} \\\\ | special chars |" + EOL + + "*--------------------------------------------------+---------------+"; + + 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( "text", event.getName() ); + assertEquals( "~ = - + * [ ] < > { } \\", event.getArgs()[0] ); + assertEquals( "paragraph_", ( (SinkEventElement) it.next() ).getName() ); + + assertEquals( "table", ( (SinkEventElement) it.next() ).getName() ); + assertEquals( "tableRows", ( (SinkEventElement) it.next() ).getName() ); + assertEquals( "tableRow", ( (SinkEventElement) it.next() ).getName() ); + assertEquals( "tableCell", ( (SinkEventElement) it.next() ).getName() ); + + event = (SinkEventElement) it.next(); + assertEquals( "text", event.getName() ); + + // FIXME! + /* + assertEquals( "~ = - + * [ ] < > { } \\", event.getArgs()[0] ); + assertEquals( "tableCell_", ( (SinkEventElement) it.next() ).getName() ); + assertEquals( "tableCell", ( (SinkEventElement) it.next() ).getName() ); + assertEquals( "text", ( (SinkEventElement) it.next() ).getName() ); + assertEquals( "tableCell_", ( (SinkEventElement) it.next() ).getName() ); + */ + } + /** {...@inheritdoc} */ protected String outputExtension() {