Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native
Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/pom.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/src/main/java/org/plugin/TestPlugin.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/src/main/java/org/plugin/TestPlugin.java?rev=612592&view=auto ============================================================================== --- maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/src/main/java/org/plugin/TestPlugin.java (added) +++ maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/src/main/java/org/plugin/TestPlugin.java Wed Jan 16 14:17:56 2008 @@ -0,0 +1,38 @@ +package org.plugin; + +import org.apache.maven.plugin.Mojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.MojoFailureException; +import org.apache.maven.plugin.logging.Log; + +/** + * @goal test + */ +public class TestPlugin + implements Mojo +{ + + private Log log; + + /** + * @parameter + * @required + */ + private String requiredParam; + + public void execute() + throws MojoExecutionException, MojoFailureException + { + } + + public Log getLog() + { + return log; + } + + public void setLog( Log log ) + { + this.log = log; + } + +} Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/src/main/java/org/plugin/TestPlugin.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/plugin/src/main/java/org/plugin/TestPlugin.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/project/pom.xml URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/project/pom.xml?rev=612592&view=auto ============================================================================== --- maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/project/pom.xml (added) +++ maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/project/pom.xml Wed Jan 16 14:17:56 2008 @@ -0,0 +1,25 @@ +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<project> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>testReportMissingRequiredMojoParameter</artifactId> + <version>1</version> +</project> Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/project/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMissingRequiredMojoParameter/project/pom.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/pom.xml URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/pom.xml?rev=612592&view=auto ============================================================================== --- maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/pom.xml (added) +++ maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/pom.xml Wed Jan 16 14:17:56 2008 @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="UTF-8"?><project> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven.errortest</groupId> + <artifactId>testReportMojoExecutionException-maven-plugin</artifactId> + <packaging>maven-plugin</packaging> + <version>1</version> + <dependencies> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-plugin-api</artifactId> + <version>2.1-SNAPSHOT</version> + </dependency> + </dependencies> + <build> + <pluginManagement> + <plugins> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.3.1</version> + </plugin> + <plugin> + <artifactId>maven-deploy-plugin</artifactId> + <version>2.3</version> + </plugin> + <plugin> + <artifactId>maven-install-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <artifactId>maven-resources-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <artifactId>maven-jar-plugin</artifactId> + <version>2.1</version> + </plugin> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <version>2.0.2</version> + </plugin> + <plugin> + <artifactId>maven-plugin-plugin</artifactId> + <version>2.3</version> + </plugin> + </plugins> + </pluginManagement> + </build> +</project> \ No newline at end of file Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/pom.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/src/main/java/org/plugin/TestPlugin.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/src/main/java/org/plugin/TestPlugin.java?rev=612592&view=auto ============================================================================== --- maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/src/main/java/org/plugin/TestPlugin.java (added) +++ maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/src/main/java/org/plugin/TestPlugin.java Wed Jan 16 14:17:56 2008 @@ -0,0 +1,33 @@ +package org.plugin; + +import org.apache.maven.plugin.Mojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.MojoFailureException; +import org.apache.maven.plugin.logging.Log; + +/** + * @goal test + */ +public class TestPlugin + implements Mojo +{ + + private Log log; + + public void execute() + throws MojoExecutionException, MojoFailureException + { + throw new MojoExecutionException( "This is meant to fail." ); + } + + public Log getLog() + { + return log; + } + + public void setLog( Log log ) + { + this.log = log; + } + +} Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/src/main/java/org/plugin/TestPlugin.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/plugin/src/main/java/org/plugin/TestPlugin.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/project/pom.xml URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/project/pom.xml?rev=612592&view=auto ============================================================================== --- maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/project/pom.xml (added) +++ maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/project/pom.xml Wed Jan 16 14:17:56 2008 @@ -0,0 +1,26 @@ +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<project> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>testReportMojoExecutionException</artifactId> + <version>1</version> + +</project> Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/project/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/components/trunk/maven-embedder/src/test/error-reporting-projects/testReportMojoExecutionException/project/pom.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Modified: maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/error/ErrorReporterPointcutTest.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/error/ErrorReporterPointcutTest.java?rev=612592&r1=612591&r2=612592&view=diff ============================================================================== --- maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/error/ErrorReporterPointcutTest.java (original) +++ maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/error/ErrorReporterPointcutTest.java Wed Jan 16 14:17:56 2008 @@ -17,6 +17,7 @@ import org.apache.maven.model.io.xpp3.MavenXpp3Reader; import org.apache.maven.plugin.PluginManagerException; import org.apache.maven.settings.Settings; +import org.codehaus.plexus.logging.Logger; import org.codehaus.plexus.util.FileUtils; import org.codehaus.plexus.util.xml.pull.XmlPullParserException; import org.easymock.MockControl; @@ -279,9 +280,35 @@ } public void testReportAttemptToOverrideUneditableMojoParameter() + throws IOException { - // TODO Auto-generated method stub + if ( !checkOnline() ) + { + return; + } + + File projectDir = prepareProjectDir(); + + buildTestAccessory( new File( projectDir, "plugin" ) ); + + File basedir = new File( projectDir, "project" ); + + reporter.reportAttemptToOverrideUneditableMojoParameter( null, null, null, null, null, null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporterCtl.replay(); + + MavenExecutionRequest request = new DefaultMavenExecutionRequest().setBaseDirectory( basedir ) + .setShowErrors( true ) + .setErrorReporter( reporter ) + .setGoals( Arrays.asList( new String[] { + "initialize" + } ) ); + maven.execute( request ); + + reporterCtl.verify(); } public void testReportErrorApplyingMojoConfiguration() @@ -444,12 +471,6 @@ reporterCtl.verify(); } - public void testReportErrorSearchingforCompatibleExtensionPluginVersion() - { - // TODO Auto-generated method stub - - } - public void testReportExtensionPluginArtifactNotFound() { // TODO Auto-generated method stub @@ -457,21 +478,91 @@ } public void testReportExtensionPluginVersionNotFound() + throws IOException { - // TODO Auto-generated method stub + File projectDir = prepareProjectDir(); + File localRepo = new File( projectDir, "local-repo" ); + File project = new File( projectDir, "project" ); + Settings settings = new Settings(); + settings.setOffline( true ); + settings.setLocalRepository( localRepo.getAbsolutePath() ); + + reporter.reportExtensionPluginVersionNotFound( null, null, null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporterCtl.replay(); + + MavenExecutionRequest request = new DefaultMavenExecutionRequest().setBaseDirectory( project ) + .setShowErrors( true ) + .setLoggingLevel( Logger.LEVEL_DEBUG ) + .setSettings( settings ) + .setErrorReporter( reporter ) + .setGoals( Arrays.asList( new String[] { + "initialize" + } ) ); + + maven.execute( request ); + + reporterCtl.verify(); } public void testReportIncompatibleMavenVersionForExtensionPlugin() + throws IOException { - // TODO Auto-generated method stub + File projectDir = prepareProjectDir(); + File localRepo = new File( projectDir, "local-repo" ); + File project = new File( projectDir, "project" ); + reporter.reportIncompatibleMavenVersionForExtensionPlugin( null, null, null, null, null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporterCtl.replay(); + + MavenExecutionRequest request = new DefaultMavenExecutionRequest().setBaseDirectory( project ) + .setShowErrors( true ) + .setLocalRepositoryPath( localRepo ) + .setErrorReporter( reporter ) + .setGoals( Arrays.asList( new String[] { + "initialize" + } ) ); + + maven.execute( request ); + + reporterCtl.verify(); } public void testReportInvalidDependencyVersionInExtensionPluginPOM() + throws IOException { - // TODO Auto-generated method stub + File projectDir = prepareProjectDir(); + File localRepo = new File( projectDir, "local-repo" ); + File project = new File( projectDir, "project" ); + // TODO: Verify that the actual error reported is the one that identified the failing project as an extension POM. + reporter.reportBadDependencyVersion( null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporter.reportInvalidDependencyVersionInExtensionPluginPOM( null, null, null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporterCtl.replay(); + + MavenExecutionRequest request = new DefaultMavenExecutionRequest().setBaseDirectory( project ) + .setShowErrors( true ) + .setLocalRepositoryPath( localRepo ) + .setErrorReporter( reporter ) + .setGoals( Arrays.asList( new String[] { + "initialize" + } ) ); + + maven.execute( request ); + + reporterCtl.verify(); } public void testReportInvalidMavenVersion() @@ -581,15 +672,67 @@ } public void testReportMissingRequiredMojoParameter() + throws IOException { - // TODO Auto-generated method stub + if ( !checkOnline() ) + { + return; + } + File projectDir = prepareProjectDir(); + + buildTestAccessory( new File( projectDir, "plugin" ) ); + + File basedir = new File( projectDir, "project" ); + + reporter.reportMissingRequiredMojoParameter( null, null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporterCtl.replay(); + + MavenExecutionRequest request = new DefaultMavenExecutionRequest().setBaseDirectory( basedir ) + .setShowErrors( true ) + .setErrorReporter( reporter ) + .setGoals( Arrays.asList( new String[] { + "org.apache.maven.errortest:testReportMissingRequiredMojoParameter-maven-plugin:1:test" + } ) ); + + maven.execute( request ); + + reporterCtl.verify(); } public void testReportMojoExecutionException() + throws IOException { - // TODO Auto-generated method stub + if ( !checkOnline() ) + { + return; + } + File projectDir = prepareProjectDir(); + + buildTestAccessory( new File( projectDir, "plugin" ) ); + + File basedir = new File( projectDir, "project" ); + + reporter.reportMojoExecutionException( null, null, null ); + reporterCtl.setMatcher( MockControl.ALWAYS_MATCHER ); + reporterCtl.setVoidCallable(); + + reporterCtl.replay(); + + MavenExecutionRequest request = new DefaultMavenExecutionRequest().setBaseDirectory( basedir ) + .setShowErrors( true ) + .setErrorReporter( reporter ) + .setGoals( Arrays.asList( new String[] { + "org.apache.maven.errortest:testReportMojoExecutionException-maven-plugin:1:test" + } ) ); + + maven.execute( request ); + + reporterCtl.verify(); } public void testReportMojoLookupError() @@ -729,18 +872,6 @@ } public void testReportUnresolvableArtifactWhileAddingExtensionPlugin() - { - // TODO Auto-generated method stub - - } - - public void testReportUnresolvableExtensionPluginPOM() - { - // TODO Auto-generated method stub - - } - - public void testReportUseOfBannedMojoParameter() { // TODO Auto-generated method stub