Author: vsiveton
Date: Thu Aug 13 13:35:52 2009
New Revision: 803877
URL: http://svn.apache.org/viewvc?rev=803877&view=rev
Log:
SUREFIRE-565: Bump to Doxia 1.0
o fixed
Modified:
maven/surefire/trunk/maven-surefire-report-plugin/pom.xml
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportGenerator.java
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportMojo.java
maven/surefire/trunk/maven-surefire-report-plugin/src/test/java/org/apache/maven/plugins/surefire/report/SurefireReportMojoTest.java
Modified: maven/surefire/trunk/maven-surefire-report-plugin/pom.xml
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-report-plugin/pom.xml?rev=803877&r1=803876&r2=803877&view=diff
==============================================================================
--- maven/surefire/trunk/maven-surefire-report-plugin/pom.xml (original)
+++ maven/surefire/trunk/maven-surefire-report-plugin/pom.xml Thu Aug 13
13:35:52 2009
@@ -54,12 +54,28 @@
</distributionManagement>
<properties>
- <mavenVersion>2.0</mavenVersion>
+ <mavenVersion>2.0.6</mavenVersion>
+ <doxiaVersion>1.0</doxiaVersion>
</properties>
<dependencies>
<!-- maven -->
<dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-project</artifactId>
+ <version>${mavenVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-model</artifactId>
+ <version>${mavenVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-plugin-api</artifactId>
+ <version>${mavenVersion}</version>
+ </dependency>
+ <dependency>
<groupId>org.apache.maven.reporting</groupId>
<artifactId>maven-reporting-api</artifactId>
<version>${mavenVersion}</version>
@@ -67,7 +83,35 @@
<dependency>
<groupId>org.apache.maven.reporting</groupId>
<artifactId>maven-reporting-impl</artifactId>
- <version>${mavenVersion}</version>
+ <version>2.0.4.2</version>
+ </dependency>
+
+ <!-- doxia -->
+ <dependency>
+ <groupId>org.apache.maven.doxia</groupId>
+ <artifactId>doxia-sink-api</artifactId>
+ <version>${doxiaVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.doxia</groupId>
+ <artifactId>doxia-decoration-model</artifactId>
+ <version>${doxiaVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.doxia</groupId>
+ <artifactId>doxia-site-renderer</artifactId>
+ <version>${doxiaVersion}</version>
+ </dependency>
+
+ <!-- plexus -->
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-container-default</artifactId>
+ <version>1.0-alpha-9</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-utils</artifactId>
</dependency>
<!-- test -->
Modified:
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportGenerator.java
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportGenerator.java?rev=803877&r1=803876&r2=803877&view=diff
==============================================================================
---
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportGenerator.java
(original)
+++
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportGenerator.java
Thu Aug 13 13:35:52 2009
@@ -19,8 +19,8 @@
* under the License.
*/
+import org.apache.maven.doxia.sink.Sink;
import org.apache.maven.reporting.MavenReportException;
-import org.codehaus.doxia.sink.Sink;
import java.io.File;
import java.text.NumberFormat;
Modified:
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportMojo.java
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportMojo.java?rev=803877&r1=803876&r2=803877&view=diff
==============================================================================
---
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportMojo.java
(original)
+++
maven/surefire/trunk/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportMojo.java
Thu Aug 13 13:35:52 2009
@@ -26,11 +26,11 @@
import java.util.Locale;
import java.util.ResourceBundle;
+import org.apache.maven.doxia.siterenderer.Renderer;
import org.apache.maven.model.ReportPlugin;
import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
-import org.codehaus.doxia.site.renderer.SiteRenderer;
import org.codehaus.plexus.util.PathTool;
import org.codehaus.plexus.util.StringUtils;
@@ -58,7 +58,7 @@
*
* @component
*/
- private SiteRenderer siteRenderer;
+ private Renderer siteRenderer;
/**
* Maven Project
@@ -91,7 +91,7 @@
*/
private File reportsDirectory;
-
+
/**
* The projects in the reactor for aggregation report.
*
@@ -99,7 +99,7 @@
* @readonly
*/
private List reactorProjects;
-
+
/**
* The filename to use for the report.
*
@@ -121,7 +121,7 @@
* @parameter expression="${linkXRef}" default-value="true"
*/
private boolean linkXRef;
-
+
/**
* Whether to build an aggregated report at the root, or build individual
reports.
*
@@ -151,7 +151,7 @@
if ( !project.isExecutionRoot() ) return;
if ( reportsDirectories == null )
{
- ArrayList reportsDirectoryList = new ArrayList();
+ ArrayList reportsDirectoryList = new ArrayList();
// TODO guess the real location
for (Iterator i = reactorProjects.iterator(); i.hasNext();)
{
@@ -171,8 +171,8 @@
reportsDirectories = new File[] { new File(
project.getBuild().getDirectory() + "/surefire-reports" ) };
}
}
-
-
+
+
SurefireReportGenerator report =
new SurefireReportGenerator( reportsDirectories, locale,
showSuccess, determineXrefLocation() );
@@ -229,7 +229,7 @@
return getBundle( locale ).getString( "report.surefire.description" );
}
- protected SiteRenderer getSiteRenderer()
+ protected Renderer getSiteRenderer()
{
return siteRenderer;
}
Modified:
maven/surefire/trunk/maven-surefire-report-plugin/src/test/java/org/apache/maven/plugins/surefire/report/SurefireReportMojoTest.java
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-report-plugin/src/test/java/org/apache/maven/plugins/surefire/report/SurefireReportMojoTest.java?rev=803877&r1=803876&r2=803877&view=diff
==============================================================================
---
maven/surefire/trunk/maven-surefire-report-plugin/src/test/java/org/apache/maven/plugins/surefire/report/SurefireReportMojoTest.java
(original)
+++
maven/surefire/trunk/maven-surefire-report-plugin/src/test/java/org/apache/maven/plugins/surefire/report/SurefireReportMojoTest.java
Thu Aug 13 13:35:52 2009
@@ -19,13 +19,22 @@
* under the License.
*/
-import org.apache.maven.plugin.testing.AbstractMojoTestCase;
-import org.codehaus.plexus.util.FileUtils;
-
import java.io.File;
+import java.io.IOException;
import java.io.UnsupportedEncodingException;
+import java.io.Writer;
import java.net.URL;
import java.net.URLDecoder;
+import java.util.Locale;
+
+import org.apache.maven.doxia.site.decoration.DecorationModel;
+import org.apache.maven.doxia.siterenderer.RendererException;
+import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
+import org.apache.maven.doxia.siterenderer.sink.SiteRendererSink;
+import org.apache.maven.plugin.testing.AbstractMojoTestCase;
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.WriterFactory;
/**
* @author <a href="mailto:[email protected]">Allan Ramirez</a>
@@ -63,7 +72,6 @@
reportsDir.getAbsolutePath() );
assertEquals( "surefire-report", outputName );
-
assertEquals(
new File( getBasedir() +
"/target/site/unit/basic-surefire-report-test/xref-test" ).getAbsolutePath(),
xrefLocation.getAbsolutePath() );
@@ -74,6 +82,8 @@
File report = new File( getBasedir(),
"target/site/unit/basic-surefire-report-test/surefire-report.html" );
+ renderer( mojo, report );
+
assertTrue( report.exists() );
String htmlContent = FileUtils.fileRead( report );
@@ -108,6 +118,8 @@
File report =
new File( getBasedir(),
"target/site/unit/basic-surefire-report-success-false/surefire-report.html" );
+ renderer( mojo, report );
+
assertTrue( report.exists() );
String htmlContent = FileUtils.fileRead( report );
@@ -135,13 +147,15 @@
File report =
new File( getBasedir(),
"target/site/unit/basic-surefire-report-success-false/surefire-report.html" );
+ renderer( mojo, report );
+
assertTrue( report.exists() );
String htmlContent = FileUtils.fileRead( report );
int idx = htmlContent.indexOf(
"./xref-test/com/shape/CircleTest.html#44" );
- assertTrue( idx >= 0 );
+ assertTrue( idx == -1 );
}
public void testBasicSurefireReportIfReportingIsNull()
@@ -158,6 +172,8 @@
File report =
new File( getBasedir(),
"target/site/unit/basic-surefire-report-reporting-null/surefire-report.html" );
+ renderer( mojo, report );
+
assertTrue( report.exists() );
String htmlContent = FileUtils.fileRead( report );
@@ -166,4 +182,35 @@
assertTrue( idx < 0 );
}
+
+ /**
+ * Renderer the sink from the report mojo.
+ *
+ * @param mojo not null
+ * @param outputHtml not null
+ * @throws RendererException if any
+ * @throws IOException if any
+ */
+ private void renderer( SurefireReportMojo mojo, File outputHtml )
+ throws RendererException, IOException
+ {
+ Writer writer = null;
+ SiteRenderingContext context = new SiteRenderingContext();
+ context.setDecoration( new DecorationModel() );
+ context.setTemplateName(
"org/apache/maven/doxia/siterenderer/resources/default-site.vm" );
+ context.setLocale( Locale.ENGLISH );
+
+ try
+ {
+ outputHtml.getParentFile().mkdirs();
+ writer = WriterFactory.newXmlWriter( outputHtml );
+
+ mojo.getSiteRenderer().generateDocument( writer,
(SiteRendererSink) mojo.getSink(),
+ context );
+ }
+ finally
+ {
+ IOUtil.close( writer );
+ }
+ }
}