[DOXIA-583] Avoid over-escaping table captions
This closes #17
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java
index b927234..c2deb43 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java
@@ -2434,7 +2434,7 @@
{
if ( !this.tableCaptionXMLWriterStack.isEmpty() && this.tableCaptionXMLWriterStack.getLast() != null )
{
- this.tableCaptionXMLWriterStack.getLast().writeText( unifyEOLs( text ) );
+ this.tableCaptionXMLWriterStack.getLast().writeMarkup( unifyEOLs( text ) );
}
else if ( !this.tableContentWriterStack.isEmpty() && this.tableContentWriterStack.getLast() != null )
{
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java
index c53e439..87be49a 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java
@@ -2219,7 +2219,7 @@
{
if ( !this.tableCaptionXMLWriterStack.isEmpty() && this.tableCaptionXMLWriterStack.getLast() != null )
{
- this.tableCaptionXMLWriterStack.getLast().writeText( unifyEOLs( text ) );
+ this.tableCaptionXMLWriterStack.getLast().writeMarkup( unifyEOLs( text ) );
}
else if ( !this.tableContentWriterStack.isEmpty() && this.tableContentWriterStack.getLast() != null )
{
diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java
index 511dd8a..949761c 100644
--- a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java
+++ b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java
@@ -162,7 +162,7 @@
sink.tableRow_();
sink.tableRows_();
sink.tableCaption();
- sink.text( "caption1" );
+ sink.text( "caption&1" );
sink.tableCaption_();
sink.table_();
}
@@ -173,7 +173,7 @@
String actual = writer.toString();
assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\">"
- + "<caption>caption1</caption>" ) );
+ + "<caption>caption&1</caption>" ) );
assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"left\">"
+ "<caption>caption2</caption>" ) );
assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"right\">"
diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java
index 39e47a4..b94f253 100644
--- a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java
+++ b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java
@@ -164,7 +164,7 @@
sink.tableRow_();
sink.tableRows_();
sink.tableCaption();
- sink.text( "caption1" );
+ sink.text( "caption&1" );
sink.tableCaption_();
sink.table_();
}
@@ -175,7 +175,7 @@
String actual = writer.toString();
assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\">"
- + "<caption>caption1</caption>" ) );
+ + "<caption>caption&1</caption>" ) );
assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"left\">"
+ "<caption>caption2</caption>" ) );
assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"right\">"