You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2012/11/18 17:35:02 UTC
svn commit: r1410919 - in /maven/doxia/doxia/trunk:
doxia-core/src/main/java/org/apache/maven/doxia/sink/
doxia-core/src/test/java/org/apache/maven/doxia/module/
doxia-core/src/test/java/org/apache/maven/doxia/sink/
doxia-modules/doxia-module-xdoc/src/...
Author: hboutemy
Date: Sun Nov 18 16:34:59 2012
New Revision: 1410919
URL: http://svn.apache.org/viewvc?rev=1410919&view=rev
Log:
[DOXIA-405] avoid generating xhtml entire document on a single line: adding newline on every division block will improve legibility (without adding too much size to the output)
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/AbstractXmlSink.java
maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/module/AbstractIdentityTest.java
maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/XhtmlBaseSinkTest.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocIdentityTest.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocSinkTest.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlIdentityTest.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkTest.java
Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/AbstractXmlSink.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/AbstractXmlSink.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/AbstractXmlSink.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/AbstractXmlSink.java Sun Nov 18 16:34:59 2012
@@ -38,6 +38,15 @@ public abstract class AbstractXmlSink
/** Default namespace prepended to all tags */
private String nameSpace;
+ private boolean firstTag = true;
+
+ private boolean insertNewline = true;
+
+ public void setInsertNewline( boolean insertNewline )
+ {
+ this.insertNewline = insertNewline;
+ }
+
/**
* Sets the default namespace that is prepended to all tags written by this sink.
*
@@ -107,6 +116,13 @@ public abstract class AbstractXmlSink
}
StringBuilder sb = new StringBuilder();
+
+ if ( insertNewline && t.isBlock() && !firstTag )
+ {
+ sb.append( EOL );
+ }
+ firstTag = false;
+
sb.append( LESS_THAN );
if ( nameSpace != null )
Modified: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/module/AbstractIdentityTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/module/AbstractIdentityTest.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/module/AbstractIdentityTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/module/AbstractIdentityTest.java Sun Nov 18 16:34:59 2012
@@ -136,7 +136,7 @@ public abstract class AbstractIdentityTe
/**
* The output files generated by this class are text files,
- * independend of the kind of module being tested.
+ * independent of the kind of module being tested.
*
* @return The String "txt".
*/
Modified: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/XhtmlBaseSinkTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/XhtmlBaseSinkTest.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/XhtmlBaseSinkTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/XhtmlBaseSinkTest.java Sun Nov 18 16:34:59 2012
@@ -208,7 +208,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\" style=\"bold\"><h2 style=\"bold\"></h2></div>", writer.toString() );
+ assertEquals( "<div class=\"section\" style=\"bold\">\n<h2 style=\"bold\"></h2></div>", writer.toString() );
}
/**
@@ -234,7 +234,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"foo\" id=\"bar\"><h2></h2></div>", writer.toString() );
+ assertEquals( "<div class=\"foo\" id=\"bar\">\n<h2></h2></div>", writer.toString() );
}
/**
@@ -257,7 +257,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\"><h2></h2></div>", writer.toString() );
+ assertEquals( "<div class=\"section\">\n<h2></h2></div>", writer.toString() );
}
/**
@@ -280,7 +280,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\"><h3></h3></div>", writer.toString() );
+ assertEquals( "<div class=\"section\">\n<h3></h3></div>", writer.toString() );
}
/**
@@ -303,7 +303,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\"><h4></h4></div>", writer.toString() );
+ assertEquals( "<div class=\"section\">\n<h4></h4></div>", writer.toString() );
}
/**
@@ -325,7 +325,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\"><h5></h5></div>", writer.toString() );
+ assertEquals( "<div class=\"section\">\n<h5></h5></div>", writer.toString() );
}
/**
@@ -347,7 +347,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\"><h6></h6></div>", writer.toString() );
+ assertEquals( "<div class=\"section\">\n<h6></h6></div>", writer.toString() );
}
/**
@@ -371,7 +371,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<ul><li></li></ul>", writer.toString() );
+ assertEquals( "<ul>\n<li></li></ul>", writer.toString() );
writer = new StringWriter();
@@ -389,7 +389,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<ul style=\"bold\"><li style=\"bold\"></li></ul>", writer.toString() );
+ assertEquals( "<ul style=\"bold\">\n<li style=\"bold\"></li></ul>", writer.toString() );
}
/**
@@ -413,7 +413,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<ol style=\"list-style-type: decimal\"><li></li></ol>", writer.toString() );
+ assertEquals( "<ol style=\"list-style-type: decimal\">\n<li></li></ol>", writer.toString() );
writer = new StringWriter();
@@ -431,7 +431,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<ol style=\"list-style-type: decimal\"><li style=\"bold\"></li></ol>", writer.toString() );
+ assertEquals( "<ol style=\"list-style-type: decimal\">\n<li style=\"bold\"></li></ol>", writer.toString() );
}
/**
@@ -455,7 +455,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<dl><dt></dt><dd></dd></dl>", writer.toString() );
+ assertEquals( "<dl>\n<dt></dt>\n<dd></dd></dl>", writer.toString() );
writer = new StringWriter();
@@ -475,7 +475,7 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<dl style=\"bold\"><dt style=\"bold\"></dt><dd style=\"bold\"></dd></dl>", writer.toString() );
+ assertEquals( "<dl style=\"bold\">\n<dt style=\"bold\"></dt>\n<dd style=\"bold\"></dd></dl>", writer.toString() );
}
/**
@@ -501,8 +501,8 @@ public class XhtmlBaseSinkTest
}
assertEquals( "<div style=\"bold\" class=\"figure\">"
- + "<p align=\"center\"><img src=\"src.jpg\" style=\"bold\" alt=\"\" /></p>"
- + "<p align=\"center\" style=\"bold\"><i></i></p></div>", writer.toString() );
+ + "\n<p align=\"center\"><img src=\"src.jpg\" style=\"bold\" alt=\"\" /></p>"
+ + "\n<p align=\"center\" style=\"bold\"><i></i></p></div>", writer.toString() );
}
/**
@@ -578,22 +578,22 @@ public class XhtmlBaseSinkTest
sink.close();
}
- assertEquals( "<div class=\"source\"><pre></pre></div>", writer.toString() );
+ assertEquals( "<div class=\"source\">\n<pre></pre></div>", writer.toString() );
- checkVerbatimAttributes( attributes, "<div><pre style=\"bold\"></pre></div>" );
+ checkVerbatimAttributes( attributes, "<div>\n<pre style=\"bold\"></pre></div>" );
final SinkEventAttributes att =
new SinkEventAttributeSet( new String[] {SinkEventAttributes.ID, "id"} );
- checkVerbatimAttributes( att, "<div><pre id=\"id\"></pre></div>" );
+ checkVerbatimAttributes( att, "<div>\n<pre id=\"id\"></pre></div>" );
att.addAttribute( Attribute.CLASS, "class" );
- checkVerbatimAttributes( att, "<div><pre id=\"id\" class=\"class\"></pre></div>" );
+ checkVerbatimAttributes( att, "<div>\n<pre id=\"id\" class=\"class\"></pre></div>" );
att.addAttribute( SinkEventAttributes.DECORATION, "boxed" );
- checkVerbatimAttributes( att, "<div class=\"source\"><pre id=\"id\" class=\"class\"></pre></div>" );
+ checkVerbatimAttributes( att, "<div class=\"source\">\n<pre id=\"id\" class=\"class\"></pre></div>" );
att.removeAttribute( Attribute.CLASS.toString() );
- checkVerbatimAttributes( att, "<div class=\"source\"><pre id=\"id\"></pre></div>" );
+ checkVerbatimAttributes( att, "<div class=\"source\">\n<pre id=\"id\"></pre></div>" );
}
private void checkVerbatimAttributes( final SinkEventAttributes att, final String expected )
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocIdentityTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocIdentityTest.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocIdentityTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocIdentityTest.java Sun Nov 18 16:34:59 2012
@@ -44,7 +44,9 @@ public class XdocIdentityTest
/** {@inheritDoc} */
protected Sink createSink( Writer writer )
{
- return new XdocSink( writer );
+ XdocSink sink = new XdocSink( writer );
+ sink.setInsertNewline( false );
+ return sink;
}
/** {@inheritDoc} */
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocSinkTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocSinkTest.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocSinkTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocSinkTest.java Sun Nov 18 16:34:59 2012
@@ -126,19 +126,19 @@ public class XdocSinkTest
/** {@inheritDoc} */
protected String getListBlock( String item )
{
- return "<ul><li>" + item + "</li></ul>";
+ return "<ul>\n<li>" + item + "</li></ul>";
}
/** {@inheritDoc} */
protected String getNumberedListBlock( String item )
{
- return "<ol style=\"list-style-type: lower-roman\"><li>" + item + "</li></ol>";
+ return "<ol style=\"list-style-type: lower-roman\">\n<li>" + item + "</li></ol>";
}
/** {@inheritDoc} */
protected String getDefinitionListBlock( String definum, String definition )
{
- return "<dl><dt>" + definum + "</dt><dd>" + definition + "</dd></dl>";
+ return "<dl>\n<dt>" + definum + "</dt>\n<dd>" + definition + "</dd></dl>";
}
/** {@inheritDoc} */
@@ -151,7 +151,7 @@ public class XdocSinkTest
protected String getTableBlock( String cell, String caption )
{
return "<table border=\"0\"><caption>" + caption
- + "</caption><tr valign=\"top\"><td>" + cell + "</td></tr></table>";
+ + "</caption>\n<tr valign=\"top\">\n<td>" + cell + "</td></tr></table>";
}
/** {@inheritDoc} */
@@ -257,7 +257,7 @@ public class XdocSinkTest
sink.close();
}
- assertEquals( "<pre></pre><source></source><pre width=\"20%\"></pre>", writer.toString() );
+ assertEquals( "<pre></pre><source></source>\n<pre width=\"20%\"></pre>", writer.toString() );
}
/**
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlIdentityTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlIdentityTest.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlIdentityTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlIdentityTest.java Sun Nov 18 16:34:59 2012
@@ -44,7 +44,9 @@ public class XhtmlIdentityTest
/** {@inheritDoc} */
protected Sink createSink( Writer writer )
{
- return new XhtmlSink( writer );
+ XhtmlSink sink = new XhtmlSink( writer );
+ sink.setInsertNewline( false );
+ return sink;
}
/** {@inheritDoc} */
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkTest.java?rev=1410919&r1=1410918&r2=1410919&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/test/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkTest.java Sun Nov 18 16:34:59 2012
@@ -112,7 +112,7 @@ public class XhtmlSinkTest
protected String getHeadBlock()
{
return "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">" +
- "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head><title></title><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/></head>";
+ "<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n<title></title>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/></head>";
}
/** {@inheritDoc} */
@@ -130,49 +130,49 @@ public class XhtmlSinkTest
/** {@inheritDoc} */
protected String getSection1Block( String title )
{
- return "<div class=\"section\"><h2>" + title + "</h2></div>";
+ return "<div class=\"section\">\n<h2>" + title + "</h2></div>";
}
/** {@inheritDoc} */
protected String getSection2Block( String title )
{
- return "<div class=\"section\"><h3>" + title + "</h3></div>";
+ return "<div class=\"section\">\n<h3>" + title + "</h3></div>";
}
/** {@inheritDoc} */
protected String getSection3Block( String title )
{
- return "<div class=\"section\"><h4>" + title + "</h4></div>";
+ return "<div class=\"section\">\n<h4>" + title + "</h4></div>";
}
/** {@inheritDoc} */
protected String getSection4Block( String title )
{
- return "<div class=\"section\"><h5>" + title + "</h5></div>";
+ return "<div class=\"section\">\n<h5>" + title + "</h5></div>";
}
/** {@inheritDoc} */
protected String getSection5Block( String title )
{
- return "<div class=\"section\"><h6>" + title + "</h6></div>";
+ return "<div class=\"section\">\n<h6>" + title + "</h6></div>";
}
/** {@inheritDoc} */
protected String getListBlock( String item )
{
- return "<ul><li>" + item + "</li></ul>";
+ return "<ul>\n<li>" + item + "</li></ul>";
}
/** {@inheritDoc} */
protected String getNumberedListBlock( String item )
{
- return "<ol style=\"list-style-type: lower-roman\"><li>" + item + "</li></ol>";
+ return "<ol style=\"list-style-type: lower-roman\">\n<li>" + item + "</li></ol>";
}
/** {@inheritDoc} */
protected String getDefinitionListBlock( String definum, String definition )
{
- return "<dl><dt>" + definum + "</dt><dd>" + definition + "</dd></dl>";
+ return "<dl>\n<dt>" + definum + "</dt>\n<dd>" + definition + "</dd></dl>";
}
/** {@inheritDoc} */
@@ -185,7 +185,7 @@ public class XhtmlSinkTest
protected String getTableBlock( String cell, String caption )
{
return "<table border=\"0\" class=\"bodyTable\">"
- + "<caption>Table caption</caption><tr class=\"a\"><td>cell</td></tr>"
+ + "<caption>Table caption</caption><tr class=\"a\">\n<td>cell</td></tr>"
+ "</table>";
}
@@ -206,7 +206,7 @@ public class XhtmlSinkTest
/** {@inheritDoc} */
protected String getVerbatimBlock( String text )
{
- return "<div class=\"source\"><pre>" + text + "</pre></div>";
+ return "<div class=\"source\">\n<pre>" + text + "</pre></div>";
}
/** {@inheritDoc} */
@@ -301,7 +301,7 @@ public class XhtmlSinkTest
sink.close();
}
- assertEquals( "<div class=\"section\"><h2>&</h2><p>&</p></div>", writer.toString() );
+ assertEquals( "<div class=\"section\">\n<h2>&</h2>\n<p>&</p></div>", writer.toString() );
}
/**
@@ -335,7 +335,7 @@ public class XhtmlSinkTest
}
String expected =
- "<head><title>Title</title><!-- A comment --><meta name=\"author\" content=\"ģ&\" />"
+ "<head>\n<title>Title</title><!-- A comment --><meta name=\"author\" content=\"ģ&\" />"
+ "<base href=\"http://maven.apache.org/\" /></head>";
String actual = writer.toString();
assertTrue( actual, actual.indexOf( expected ) != -1 );