You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/07/07 15:25:15 UTC

[maven-project-info-reports-plugin] 01/01: [MPIR-422] Stop overriding AbstractMavenReport#execute()

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch MPIR-422
in repository https://gitbox.apache.org/repos/asf/maven-project-info-reports-plugin.git

commit 90f65c278974570de088b2bb58852a001739cea8
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Thu Jul 7 17:12:59 2022 +0200

    [MPIR-422] Stop overriding AbstractMavenReport#execute()
    
    This closes #41
---
 .../projectinfo/AbstractProjectInfoReport.java     | 81 ----------------------
 .../projectinfo/AbstractProjectInfoTestCase.java   |  2 +-
 .../report/projectinfo/CiManagementReportTest.java |  3 +-
 .../report/projectinfo/DependenciesReportTest.java |  3 +-
 .../DependencyConvergenceReportTest.java           |  3 +-
 .../DependencyManagementReportTest.java            |  3 +-
 .../maven/report/projectinfo/IndexReportTest.java  |  3 +-
 .../projectinfo/IssueManagementReportTest.java     |  3 +-
 .../report/projectinfo/LicensesReportTest.java     |  6 +-
 .../report/projectinfo/MailingListsReportTest.java |  3 +-
 .../report/projectinfo/ModulesReportTest.java      |  8 +--
 .../projectinfo/PluginManagementReportTest.java    | 18 ++---
 .../maven/report/projectinfo/ScmReportTest.java    | 10 +--
 .../report/projectinfo/SummaryReportTest.java      |  3 +-
 .../maven/report/projectinfo/TeamReportTest.java   |  7 +-
 15 files changed, 27 insertions(+), 129 deletions(-)

diff --git a/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java b/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
index b1ab8f3..dd3d591 100644
--- a/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
+++ b/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
@@ -20,10 +20,7 @@ package org.apache.maven.report.projectinfo;
  */
 
 import java.io.File;
-import java.io.FileOutputStream;
 import java.io.IOException;
-import java.io.OutputStreamWriter;
-import java.io.Writer;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.net.URLClassLoader;
@@ -36,26 +33,15 @@ import java.util.Map;
 import java.util.MissingResourceException;
 import java.util.ResourceBundle;
 
-import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.doxia.site.decoration.Body;
-import org.apache.maven.doxia.site.decoration.DecorationModel;
-import org.apache.maven.doxia.siterenderer.Renderer;
-import org.apache.maven.doxia.siterenderer.RendererException;
-import org.apache.maven.doxia.siterenderer.RenderingContext;
-import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
-import org.apache.maven.doxia.siterenderer.sink.SiteRendererSink;
 import org.apache.maven.doxia.tools.SiteTool;
-import org.apache.maven.doxia.tools.SiteToolException;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Plugin;
-import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.ProjectBuilder;
 import org.apache.maven.reporting.AbstractMavenReport;
-import org.apache.maven.reporting.MavenReportException;
 import org.apache.maven.repository.RepositorySystem;
 import org.apache.maven.settings.Settings;
 import org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolver;
@@ -65,7 +51,6 @@ import org.codehaus.plexus.interpolation.InterpolationException;
 import org.codehaus.plexus.interpolation.PrefixedObjectValueSource;
 import org.codehaus.plexus.interpolation.PropertiesBasedValueSource;
 import org.codehaus.plexus.interpolation.RegexBasedInterpolator;
-import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.StringUtils;
 import org.codehaus.plexus.util.xml.Xpp3Dom;
 
@@ -200,63 +185,6 @@ public abstract class AbstractProjectInfoReport
         return !skip;
     }
 
-    @Override
-    public void execute()
-        throws MojoExecutionException
-    {
-        if ( !canGenerateReport() )
-        {
-            return;
-        }
-
-        // TODO: push to a helper? Could still be improved by taking more of the site information from the site plugin
-        Writer writer = null;
-        try
-        {
-            String filename = getOutputName() + ".html";
-
-            DecorationModel model = new DecorationModel();
-            model.setBody( new Body() );
-
-            Map<String, Object> attributes = new HashMap<>();
-            attributes.put( "outputEncoding", "UTF-8" );
-            attributes.put( "project", project );
-
-            Locale locale = Locale.getDefault();
-            Artifact defaultSkin =
-                siteTool.getDefaultSkinArtifact( localRepository, project.getRemoteArtifactRepositories() );
-
-            SiteRenderingContext siteContext = siteRenderer.createContextForSkin( defaultSkin, attributes,
-                                                                                  model, getName( locale ), locale );
-
-            RenderingContext context = new RenderingContext( outputDirectory, filename, null );
-
-            SiteRendererSink sink = new SiteRendererSink( context );
-
-            generate( sink, null, locale );
-
-            outputDirectory.mkdirs();
-
-            writer = new OutputStreamWriter( new FileOutputStream( new File( outputDirectory, filename ) ), "UTF-8" );
-
-            siteRenderer.mergeDocumentIntoSite( writer, sink, siteContext );
-
-            siteRenderer.copyResources( siteContext, outputDirectory );
-
-            writer.close();
-            writer = null;
-        }
-        catch ( RendererException | IOException | SiteToolException | MavenReportException e )
-        {
-            throw new MojoExecutionException( "An error has occurred in " + getName( Locale.ENGLISH )
-                + " report generation.", e );
-        }
-        finally
-        {
-            IOUtil.close( writer );
-        }
-    }
-
     @Override
     public String getCategoryName()
     {
@@ -374,15 +302,6 @@ public abstract class AbstractProjectInfoReport
         return null;
     }
 
-    /**
-     * {@inheritDoc}
-     */
-    @Override
-    protected Renderer getSiteRenderer()
-    {
-        return siteRenderer;
-    }
-
     /**
      * @param locale The locale
      * @param key The key to search for
diff --git a/src/test/java/org/apache/maven/report/projectinfo/AbstractProjectInfoTestCase.java b/src/test/java/org/apache/maven/report/projectinfo/AbstractProjectInfoTestCase.java
index 45d9c90..d445b70 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/AbstractProjectInfoTestCase.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/AbstractProjectInfoTestCase.java
@@ -172,7 +172,7 @@ public abstract class AbstractProjectInfoTestCase
     {
         File pluginXmlFile = new File( getBasedir(), "src/test/resources/plugin-configs/" + pluginXml );
         AbstractProjectInfoReport mojo  = createReportMojo( goal, pluginXmlFile );
-        return generateReport( mojo, pluginXmlFile);
+        return generateReport( mojo, pluginXmlFile );
     }
 
     protected AbstractProjectInfoReport createReportMojo( String goal, File pluginXmlFile )
diff --git a/src/test/java/org/apache/maven/report/projectinfo/CiManagementReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/CiManagementReportTest.java
index c438fc0..7ba4c92 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/CiManagementReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/CiManagementReportTest.java
@@ -64,8 +64,7 @@ public class CiManagementReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.ci-management.name" ),
-            getString( "report.ci-management.title" ) );
+        String expectedTitle = getString( "report.ci-management.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/DependenciesReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/DependenciesReportTest.java
index a90ffaf..edb2350 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/DependenciesReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/DependenciesReportTest.java
@@ -64,8 +64,7 @@ public class DependenciesReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.dependencies.name" ),
-            getString( "report.dependencies.title" ) );
+        String expectedTitle = getString( "report.dependencies.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the tables
diff --git a/src/test/java/org/apache/maven/report/projectinfo/DependencyConvergenceReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/DependencyConvergenceReportTest.java
index 402422d..4d9c0d4 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/DependencyConvergenceReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/DependencyConvergenceReportTest.java
@@ -63,8 +63,7 @@ public class DependencyConvergenceReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.dependency-convergence.name" ),
-            getString( "report.dependency-convergence.reactor.title" ) );
+        String expectedTitle = getString( "report.dependency-convergence.reactor.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/DependencyManagementReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/DependencyManagementReportTest.java
index 574880d..8870f88 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/DependencyManagementReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/DependencyManagementReportTest.java
@@ -64,8 +64,7 @@ public class DependencyManagementReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.dependency-management.name" ),
-            getString( "report.dependency-management.title" ) );
+        String expectedTitle = getString( "report.dependency-management.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the tables
diff --git a/src/test/java/org/apache/maven/report/projectinfo/IndexReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/IndexReportTest.java
index 0f7e6e0..d202be8 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/IndexReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/IndexReportTest.java
@@ -64,8 +64,7 @@ public class IndexReportTest
 
         // Test the Page title
         // Index does not have a 'name' but 'title' only
-        String expectedTitle = prepareTitle( getString( "report.index.title" ),
-            getString( "report.index.title" ) );
+        String expectedTitle = getString( "report.index.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/IssueManagementReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/IssueManagementReportTest.java
index c0f77e0..3d61cf5 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/IssueManagementReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/IssueManagementReportTest.java
@@ -64,8 +64,7 @@ public class IssueManagementReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.issue-management.name" ),
-            getString( "report.issue-management.title" ) );
+        String expectedTitle = getString( "report.issue-management.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the links
diff --git a/src/test/java/org/apache/maven/report/projectinfo/LicensesReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/LicensesReportTest.java
index a6733bd..6facb28 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/LicensesReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/LicensesReportTest.java
@@ -64,8 +64,7 @@ public class LicensesReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.licenses.name" ),
-            getString( "report.licenses.title" ) );
+        String expectedTitle = getString( "report.licenses.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
@@ -99,8 +98,7 @@ public class LicensesReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.licenses.name" ),
-            getString( "report.licenses.title" ) );
+        String expectedTitle = getString( "report.licenses.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/MailingListsReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/MailingListsReportTest.java
index aba5387..aba655b 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/MailingListsReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/MailingListsReportTest.java
@@ -65,8 +65,7 @@ public class MailingListsReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.mailing-lists.name" ),
-            getString( "report.mailing-lists.title" ) );
+        String expectedTitle = getString( "report.mailing-lists.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/ModulesReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/ModulesReportTest.java
index 3202960..ceba692 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/ModulesReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/ModulesReportTest.java
@@ -46,15 +46,15 @@ public class ModulesReportTest
      * WebConversation object
      */
     private static final WebConversation WEB_CONVERSATION = new WebConversation();
-    
+
     @Override
     protected AbstractProjectInfoReport createReportMojo( String goal, File pluginXmlFile )
         throws Exception
     {
         AbstractProjectInfoReport mojo = super.createReportMojo( goal, pluginXmlFile );
-        
+
         mojo.setLog( new SilentLog() );
-        
+
         return mojo;
     }
 
@@ -81,7 +81,7 @@ public class ModulesReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.modules.name" ), getString( "report.modules.title" ) );
+        String expectedTitle = getString( "report.modules.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/PluginManagementReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/PluginManagementReportTest.java
index 9f9281e..362b8bb 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/PluginManagementReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/PluginManagementReportTest.java
@@ -53,16 +53,14 @@ public class PluginManagementReportTest
      */
     private static final WebConversation WEB_CONVERSATION = new WebConversation();
 
-    
-    
     @Override
     protected AbstractProjectInfoReport createReportMojo( String goal, File pluginXmlFile )
         throws Exception
     {
         AbstractProjectInfoReport mojo = super.createReportMojo( goal, pluginXmlFile );
-        
+
         ProjectBuilder builder = mock( ProjectBuilder.class );
-        
+
         when( builder.build( isA( Artifact.class ),
                              isA( ProjectBuildingRequest.class ) ) ).thenAnswer( new Answer<ProjectBuildingResult>()
                              {
@@ -70,16 +68,16 @@ public class PluginManagementReportTest
                                  public ProjectBuildingResult answer( InvocationOnMock invocation )
                                      throws Throwable
                                  {
-                                     return createProjectBuildingResult( (Artifact) invocation.getArgument( 0 ), 
+                                     return createProjectBuildingResult( (Artifact) invocation.getArgument( 0 ),
                                                                          "http://m.a.o/" );
                                  }
                              } );
 
         setVariableValueToObject( mojo, "projectBuilder", builder );
-        
+
         return mojo;
     }
-    
+
     /**
      * Test report
      *
@@ -103,8 +101,7 @@ public class PluginManagementReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.plugin-management.name" ),
-            getString( "report.plugin-management.title" ) );
+        String expectedTitle = getString( "report.plugin-management.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the tables
@@ -142,8 +139,7 @@ public class PluginManagementReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.plugin-management.name" ),
-            getString( "report.plugin-management.title" ) );
+        String expectedTitle = getString( "report.plugin-management.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the tables
diff --git a/src/test/java/org/apache/maven/report/projectinfo/ScmReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/ScmReportTest.java
index 308927d..170d027 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/ScmReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/ScmReportTest.java
@@ -66,15 +66,12 @@ public class ScmReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.scm.name" ),
-            getString( "report.scm.title" ) );
+        String expectedTitle = getString( "report.scm.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
         TextBlock[] textBlocks = response.getTextBlocks();
-
-        assertEquals( textBlocks.length, 6 );
-
+        assertEquals( 6, textBlocks.length );
         assertEquals( getString( "report.scm.overview.title" ), textBlocks[0].getText() );
         assertEquals( getString( "report.scm.general.intro" ), textBlocks[1].getText() );
         assertEquals( getString( "report.scm.webaccess.title" ), textBlocks[2].getText() );
@@ -93,8 +90,7 @@ public class ScmReportTest
     {
         File pluginXmlFile = new File( getBasedir(), "src/test/resources/plugin-configs/"
                 + "scm-wrong-url-plugin-config.xml" );
-        Mojo mojo = lookupMojo( "scm", pluginXmlFile );
-        assertNotNull( "Mojo found.", mojo );
+        Mojo mojo = createReportMojo( "scm", pluginXmlFile );
 
         setVariableValueToObject( mojo, "anonymousConnection", "scm:svn" );
         try
diff --git a/src/test/java/org/apache/maven/report/projectinfo/SummaryReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/SummaryReportTest.java
index 8a876cd..36e51ff 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/SummaryReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/SummaryReportTest.java
@@ -63,8 +63,7 @@ public class SummaryReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.summary.name" ),
-            getString( "report.summary.title" ) );
+        String expectedTitle = getString( "report.summary.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         // Test the texts
diff --git a/src/test/java/org/apache/maven/report/projectinfo/TeamReportTest.java b/src/test/java/org/apache/maven/report/projectinfo/TeamReportTest.java
index ed0ca5c..21bb1a5 100644
--- a/src/test/java/org/apache/maven/report/projectinfo/TeamReportTest.java
+++ b/src/test/java/org/apache/maven/report/projectinfo/TeamReportTest.java
@@ -70,17 +70,14 @@ public class TeamReportTest
         assertTrue( response.getContentLength() > 0 );
 
         // Test the Page title
-        String expectedTitle = prepareTitle( getString( "report.team.name" ),
-            getString( "report.team.title" ) );
+        String expectedTitle = getString( "report.team.title" );
         assertEquals( expectedTitle, response.getTitle() );
 
         assertTrue( response.getText().contains( "gravatar" ));
 
         // Test the texts
         TextBlock[] textBlocks = response.getTextBlocks();
-
-        assertEquals( textBlocks.length, 7 );
-
+        assertEquals( 7, textBlocks.length );
         assertEquals( getString( "report.team.intro.title" ), textBlocks[0].getText() );
         assertEquals( getString( "report.team.intro.description1" ), textBlocks[1].getText() );
         assertEquals( getString( "report.team.intro.description2" ), textBlocks[2].getText() );