You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ep...@apache.org on 2005/12/06 11:09:31 UTC
svn commit: r354393 - in
/maven/repository-manager/trunk/maven-repository-reports-standard/src:
main/java/org/apache/maven/repository/reporting/
test/java/org/apache/maven/repository/reporting/
Author: epunzalan
Date: Tue Dec 6 02:09:13 2005
New Revision: 354393
URL: http://svn.apache.org/viewcvs?rev=354393&view=rev
Log:
PR: MRM-2
Submitted by: John Tolentino
More unit tests.
Added:
maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java (with props)
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java (with props)
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java (with props)
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java (with props)
Modified:
maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReportProcessor.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReporter.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/RepositoryQueryLayer.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/AbstractChecksumArtifactReporterTest.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReporter.java
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockRepositoryQueryLayer.java
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReportProcessor.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReportProcessor.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReportProcessor.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReportProcessor.java Tue Dec 6 02:09:13 2005
@@ -30,5 +30,5 @@
String ROLE = ArtifactReportProcessor.class.getName();
void processArtifact( Model model, Artifact artifact, ArtifactReporter reporter, ArtifactRepository repository );
-
+
}
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReporter.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReporter.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReporter.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/ArtifactReporter.java Tue Dec 6 02:09:13 2005
@@ -32,6 +32,11 @@
{
String ROLE = ArtifactReporter.class.getName();
+ public static String NULL_MODEL = "Provided model was null";
+ public static String NULL_ARTIFACT = "Provided artifact was null";
+ public static String NO_DEPENDENCIES = "Artifact has no dependencies";
+ public static String ARTIFACT_NOT_FOUND = "Artifact does not exist in the repository";
+
void addFailure( Artifact artifact, String reason );
void addSuccess( Artifact artifact );
@@ -56,4 +61,9 @@
Iterator getRepositoryMetadataWarningIterator();
+ int getFailures();
+
+ int getSuccesses();
+
+ int getWarnings();
}
Added: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java?rev=354393&view=auto
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java (added)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java Tue Dec 6 02:09:13 2005
@@ -0,0 +1,106 @@
+package org.apache.maven.repository.reporting;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Dependency;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.factory.ArtifactFactory;
+
+import java.util.List;
+import java.util.Iterator;
+
+/**
+ * @author <a href="mailto:jtolentino@mergere.com">John Tolentino</a>
+ */
+public class DefaultArtifactReportProcessor
+ implements ArtifactReportProcessor
+{
+
+ // plexus components
+ private ArtifactFactory artifactFactory;
+
+ private RepositoryQueryLayer repositoryQueryLayer;
+
+ public void processArtifact( Model model, Artifact artifact, ArtifactReporter reporter, ArtifactRepository repository )
+ {
+ if ( artifact == null )
+ {
+ reporter.addFailure( artifact, ArtifactReporter.NULL_ARTIFACT );
+ }
+ if ( model == null )
+ {
+ reporter.addFailure( artifact, ArtifactReporter.NULL_MODEL );
+ }
+ else
+ {
+ List dependencies = model.getDependencies();
+ if ( ( artifact != null ) && ( model != null ) && ( dependencies != null ) )
+ {
+ if ( repositoryQueryLayer.containsArtifact( artifact ) )
+ {
+ reporter.addSuccess( artifact );
+ }
+ else
+ {
+ reporter.addFailure( artifact, ArtifactReporter.ARTIFACT_NOT_FOUND );
+ }
+ if ( dependencies.size() > 0 )
+ {
+ Iterator iterator = dependencies.iterator();
+ while ( iterator.hasNext() )
+ {
+ Dependency dependency = (Dependency) iterator.next();
+ if ( repositoryQueryLayer.containsArtifact( createArtifact( dependency ) ) )
+ {
+ reporter.addSuccess( artifact );
+ }
+ else
+ {
+ reporter.addFailure( artifact, ArtifactReporter.ARTIFACT_NOT_FOUND );
+ }
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Only used for passing a mock object when unit testing
+ * @param repositoryQueryLayer
+ */
+ protected void setRepositoryQueryLayer( RepositoryQueryLayer repositoryQueryLayer )
+ {
+ this.repositoryQueryLayer = repositoryQueryLayer;
+ }
+
+ /**
+ * Only used for passing a mock object when unit testing
+ * @param artifactFactory
+ */
+ protected void setArtifactFactory( ArtifactFactory artifactFactory )
+ {
+ this.artifactFactory = artifactFactory;
+ }
+
+ private Artifact createArtifact( Dependency dependency )
+ {
+ return artifactFactory.createBuildArtifact( dependency.getGroupId(), dependency.getArtifactId(),
+ dependency.getVersion(), "pom" );
+ }
+}
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReportProcessor.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java Tue Dec 6 02:09:13 2005
@@ -101,4 +101,18 @@
{
return metadataWarnings.iterator();
}
+ public int getFailures()
+ {
+ return artifactFailures.size();
+ }
+
+ public int getSuccesses()
+ {
+ return artifactSuccesses.size();
+ }
+
+ public int getWarnings()
+ {
+ return artifactWarnings.size();
+ }
}
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/RepositoryQueryLayer.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/RepositoryQueryLayer.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/RepositoryQueryLayer.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/RepositoryQueryLayer.java Tue Dec 6 02:09:13 2005
@@ -27,7 +27,10 @@
{
String ROLE = RepositoryQueryLayer.class.getName();
+ public final static boolean ARTIFACT_FOUND = true;
+ public final static boolean ARTIFACT_NOT_FOUND = false;
+
boolean containsArtifact( Artifact artifact );
-
+
boolean containsArtifact( Artifact artifact, Snapshot snapshot );
}
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/AbstractChecksumArtifactReporterTest.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/AbstractChecksumArtifactReporterTest.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/AbstractChecksumArtifactReporterTest.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/AbstractChecksumArtifactReporterTest.java Tue Dec 6 02:09:13 2005
@@ -1,21 +1,7 @@
-package org.apache.maven.repository.reporting;
-
-/*
- * Copyright 2001-2005 The Apache Software Foundation.
- *
- * Licensed 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.
+/*
+ * Copyright (c) 2005 Your Corporation. All Rights Reserved.
*/
+package org.apache.maven.repository.reporting;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
Added: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java?rev=354393&view=auto
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java (added)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java Tue Dec 6 02:09:13 2005
@@ -0,0 +1,166 @@
+package org.apache.maven.repository.reporting;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Dependency;
+import org.apache.maven.artifact.Artifact;
+
+/**
+ * @author <a href="mailto:jtolentino@mergere.com">John Tolentino</a>
+ */
+public class ArtifactReportProcessorTest
+ extends AbstractRepositoryReportsTestCase
+{
+ protected MockArtifactReporter reporter;
+
+ protected Artifact artifact;
+
+ protected Model model;
+
+ protected DefaultArtifactReportProcessor processor;
+
+ protected void setUp()
+ throws Exception
+ {
+ super.setUp();
+ reporter = new MockArtifactReporter();
+ artifact = new MockArtifact();
+ model = new Model();
+ processor = new DefaultArtifactReportProcessor();
+ }
+
+ public void testNullArtifact()
+ {
+ processor.processArtifact( model, null, reporter, null );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 1 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testNoProjectDescriptor()
+ {
+ processor.processArtifact( null, artifact, reporter, null );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 1 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testArtifactFoundButNoDirectDependencies()
+ {
+ MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ processor.setRepositoryQueryLayer( queryLayer );
+ processor.processArtifact( model, artifact, reporter, null );
+ assertTrue( reporter.getSuccesses() == 1 );
+ assertTrue( reporter.getFailures() == 0 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testArtifactNotFound()
+ {
+ MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_NOT_FOUND );
+ processor.setRepositoryQueryLayer( queryLayer );
+ processor.processArtifact( model, artifact, reporter, null );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 1 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testValidArtifactWithValidSingleDependency()
+ {
+ MockArtifactFactory artifactFactory = new MockArtifactFactory();
+ processor.setArtifactFactory( artifactFactory );
+
+ MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+
+ Dependency dependency = new Dependency();
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+
+ processor.setRepositoryQueryLayer( queryLayer );
+ processor.processArtifact( model, artifact, reporter, null );
+ assertTrue( reporter.getSuccesses() == 2 );
+ assertTrue( reporter.getFailures() == 0 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testValidArtifactWithValidMultipleDependencies()
+ {
+ MockArtifactFactory artifactFactory = new MockArtifactFactory();
+ processor.setArtifactFactory( artifactFactory );
+
+ MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+
+ Dependency dependency = new Dependency();
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+
+ processor.setRepositoryQueryLayer( queryLayer );
+ processor.processArtifact( model, artifact, reporter, null );
+ assertTrue( reporter.getSuccesses() == 6 );
+ assertTrue( reporter.getFailures() == 0 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testValidArtifactWithAnInvalidDependency()
+ {
+ MockArtifactFactory artifactFactory = new MockArtifactFactory();
+ processor.setArtifactFactory( artifactFactory );
+
+ MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+
+ Dependency dependency = new Dependency();
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_NOT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+ model.addDependency( dependency );
+ queryLayer.addReturnValue( RepositoryQueryLayer.ARTIFACT_FOUND );
+
+ processor.setRepositoryQueryLayer( queryLayer );
+ processor.processArtifact( model, artifact, reporter, null );
+ assertTrue( reporter.getSuccesses() == 5 );
+ assertTrue( reporter.getFailures() == 1 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ protected void tearDown()
+ throws Exception
+ {
+ model = null;
+ artifact = null;
+ reporter = null;
+ super.tearDown();
+ }
+}
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReportProcessorTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java Tue Dec 6 02:09:13 2005
@@ -18,7 +18,6 @@
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.metadata.ArtifactRepositoryMetadata;
import org.apache.maven.artifact.repository.metadata.Versioning;
import org.apache.maven.model.Model;
@@ -31,10 +30,15 @@
extends AbstractRepositoryReportsTestCase
{
protected ArtifactReporter reporter;
+
protected ArtifactFactory artifactFactory;
+
protected Artifact artifact;
+
protected MockArtifactReportProcessor processor;
+
protected Versioning versioning;
+
protected Model model;
protected void setUp()
@@ -63,18 +67,23 @@
public void testArtifactReporterMultipleSuccess()
{
+ processor.clearList();
processor.addReturnValue( ReportCondition.SUCCESS, artifact, "one" );
processor.addReturnValue( ReportCondition.SUCCESS, artifact, "two" );
processor.addReturnValue( ReportCondition.SUCCESS, artifact, "three" );
+ reporter = new DefaultArtifactReporter();
processor.processArtifact( model, artifact, reporter, null );
Iterator success = reporter.getArtifactSuccessIterator();
assertTrue( success.hasNext() );
int i;
- for (i = 0; success.hasNext(); i++)
+ for ( i = 0; success.hasNext(); i++ )
{
success.next();
}
- assertTrue(i == 3);
+ assertTrue( i == 3 );
+ assertTrue( reporter.getSuccesses() == 3 );
+ assertTrue( reporter.getFailures() == 0 );
+ assertTrue( reporter.getWarnings() == 0 );
}
public void testArtifactReporterSingleFailure()
@@ -85,6 +94,9 @@
assertTrue( failure.hasNext() );
failure.next();
assertFalse( failure.hasNext() );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 1 );
+ assertTrue( reporter.getWarnings() == 0 );
}
public void testArtifactReporterMultipleFailure()
@@ -96,21 +108,39 @@
Iterator failure = reporter.getArtifactFailureIterator();
assertTrue( failure.hasNext() );
int i;
- for (i = 0; failure.hasNext(); i++)
+ for ( i = 0; failure.hasNext(); i++ )
{
failure.next();
}
- assertTrue(i == 3);
+ assertTrue( i == 3 );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 3 );
+ assertTrue( reporter.getWarnings() == 0 );
+ }
+
+ public void testFailureMessages()
+ {
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed once" );
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed twice" );
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed thrice" );
+ processor.processArtifact( model, artifact, reporter, null );
+ Iterator failure = reporter.getArtifactFailureIterator();
+ assertTrue( "failed once".equals( ((ArtifactResult) failure.next()).getReason() ) );
+ assertTrue( "failed twice".equals( ((ArtifactResult) failure.next()).getReason() ) );
+ assertTrue( "failed thrice".equals( ((ArtifactResult) failure.next()).getReason() ) );
}
public void testArtifactReporterSingleWarning()
{
processor.addReturnValue( ReportCondition.WARNING, artifact, "you've been warned" );
processor.processArtifact( model, artifact, reporter, null );
- Iterator warning = reporter.getArtifactFailureIterator();
+ Iterator warning = reporter.getArtifactWarningIterator();
assertTrue( warning.hasNext() );
warning.next();
assertFalse( warning.hasNext() );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 0 );
+ assertTrue( reporter.getWarnings() == 1 );
}
public void testArtifactReporterMultipleWarning()
@@ -119,19 +149,35 @@
processor.addReturnValue( ReportCondition.WARNING, artifact, "you have to stop now" );
processor.addReturnValue( ReportCondition.WARNING, artifact, "all right... that does it!" );
processor.processArtifact( model, artifact, reporter, null );
- Iterator warning = reporter.getArtifactFailureIterator();
+ Iterator warning = reporter.getArtifactWarningIterator();
assertTrue( warning.hasNext() );
int i;
- for (i = 0; warning.hasNext(); i++)
+ for ( i = 0; warning.hasNext(); i++ )
{
warning.next();
}
- assertTrue(i == 3);
+ assertTrue( i == 3 );
+ assertTrue( reporter.getSuccesses() == 0 );
+ assertTrue( reporter.getFailures() == 0 );
+ assertTrue( reporter.getWarnings() == 3 );
+ }
+
+ public void testWarningMessages()
+ {
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "i'm warning you" );
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "you have to stop now" );
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "all right... that does it!" );
+ processor.processArtifact( model, artifact, reporter, null );
+ Iterator warning = reporter.getArtifactWarningIterator();
+ assertTrue( "i'm warning you".equals( ((ArtifactResult) warning.next()).getReason() ) );
+ assertTrue( "you have to stop now".equals( ((ArtifactResult) warning.next()).getReason() ) );
+ assertTrue( "all right... that does it!".equals( ((ArtifactResult) warning.next()).getReason() ) );
}
protected void tearDown()
throws Exception
{
+ model = null;
versioning = null;
processor.clearList();
processor = null;
Added: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java?rev=354393&view=auto
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java (added)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java Tue Dec 6 02:09:13 2005
@@ -0,0 +1,246 @@
+package org.apache.maven.repository.reporting;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.versioning.VersionRange;
+import org.apache.maven.artifact.versioning.ArtifactVersion;
+import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
+import org.apache.maven.artifact.handler.ArtifactHandler;
+import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.metadata.ArtifactMetadata;
+
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:jtolentino@mergere.com">John Tolentino</a>
+ */
+public class MockArtifact
+ implements Artifact
+{
+
+ public String getGroupId()
+ {
+ return null;
+ }
+
+ public String getArtifactId()
+ {
+ return null;
+ }
+
+ public String getVersion()
+ {
+ return null;
+ }
+
+ public void setVersion( String s )
+ {
+ }
+
+ public String getScope()
+ {
+ return null;
+ }
+
+ public String getType()
+ {
+ return null;
+ }
+
+ public String getClassifier()
+ {
+ return null;
+ }
+
+ public boolean hasClassifier()
+ {
+ return false;
+ }
+
+ public File getFile()
+ {
+ return null;
+ }
+
+ public void setFile( File file )
+ {
+ }
+
+ public String getBaseVersion()
+ {
+ return null;
+ }
+
+ public void setBaseVersion( String s )
+ {
+ }
+
+ public String getId()
+ {
+ return null;
+ }
+
+ public String getDependencyConflictId()
+ {
+ return null;
+ }
+
+ public void addMetadata( ArtifactMetadata artifactMetadata )
+ {
+ }
+
+ public Collection getMetadataList()
+ {
+ return null;
+ }
+
+ public void setRepository( ArtifactRepository artifactRepository )
+ {
+ }
+
+ public ArtifactRepository getRepository()
+ {
+ return null;
+ }
+
+ public void updateVersion( String s, ArtifactRepository artifactRepository )
+ {
+ }
+
+ public String getDownloadUrl()
+ {
+ return null;
+ }
+
+ public void setDownloadUrl( String s )
+ {
+ }
+
+ public ArtifactFilter getDependencyFilter()
+ {
+ return null;
+ }
+
+ public void setDependencyFilter( ArtifactFilter artifactFilter )
+ {
+ }
+
+ public ArtifactHandler getArtifactHandler()
+ {
+ return null;
+ }
+
+ public List getDependencyTrail()
+ {
+ return null;
+ }
+
+ public void setDependencyTrail( List list )
+ {
+ }
+
+ public void setScope( String s )
+ {
+ }
+
+ public VersionRange getVersionRange()
+ {
+ return null;
+ }
+
+ public void setVersionRange( VersionRange versionRange )
+ {
+ }
+
+ public void selectVersion( String s )
+ {
+ }
+
+ public void setGroupId( String s )
+ {
+ }
+
+ public void setArtifactId( String s )
+ {
+ }
+
+ public boolean isSnapshot()
+ {
+ return false;
+ }
+
+ public void setResolved( boolean b )
+ {
+ }
+
+ public boolean isResolved()
+ {
+ return false;
+ }
+
+ public void setResolvedVersion( String s )
+ {
+ }
+
+ public void setArtifactHandler( ArtifactHandler artifactHandler )
+ {
+ }
+
+ public boolean isRelease()
+ {
+ return false;
+ }
+
+ public void setRelease( boolean b )
+ {
+ }
+
+ public List getAvailableVersions()
+ {
+ return null;
+ }
+
+ public void setAvailableVersions( List list )
+ {
+ }
+
+ public boolean isOptional()
+ {
+ return false;
+ }
+
+ public ArtifactVersion getSelectedVersion()
+ throws OverConstrainedVersionException
+ {
+ return null;
+ }
+
+ public boolean isSelectedVersionKnown()
+ throws OverConstrainedVersionException
+ {
+ return false;
+ }
+
+ public int compareTo( Object o )
+ {
+ return 0;
+ }
+}
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifact.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java?rev=354393&view=auto
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java (added)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java Tue Dec 6 02:09:13 2005
@@ -0,0 +1,86 @@
+package org.apache.maven.repository.reporting;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.versioning.VersionRange;
+
+/**
+ * @author <a href="mailto:jtolentino@mergere.com">John Tolentino</a>
+ */
+public class MockArtifactFactory
+ implements ArtifactFactory
+{
+ public Artifact createArtifact( String s, String s1, String s2, String s3, String s4 )
+ {
+ return null;
+ }
+
+ public Artifact createArtifactWithClassifier( String s, String s1, String s2, String s3, String s4 )
+ {
+ return null;
+ }
+
+ public Artifact createDependencyArtifact( String s, String s1, VersionRange versionRange, String s2, String s3,
+ String s4 )
+ {
+ return null;
+ }
+
+ public Artifact createDependencyArtifact( String s, String s1, VersionRange versionRange, String s2, String s3,
+ String s4, String s5 )
+ {
+ return null;
+ }
+
+ public Artifact createDependencyArtifact( String s, String s1, VersionRange versionRange, String s2, String s3,
+ String s4, String s5, boolean b )
+ {
+ return null;
+ }
+
+ public Artifact createBuildArtifact( String s, String s1, String s2, String s3 )
+ {
+ return null;
+ }
+
+ public Artifact createProjectArtifact( String s, String s1, String s2 )
+ {
+ return null;
+ }
+
+ public Artifact createParentArtifact( String s, String s1, String s2 )
+ {
+ return null;
+ }
+
+ public Artifact createPluginArtifact( String s, String s1, VersionRange versionRange )
+ {
+ return null;
+ }
+
+ public Artifact createProjectArtifact( String s, String s1, String s2, String s3 )
+ {
+ return null;
+ }
+
+ public Artifact createExtensionArtifact( String s, String s1, VersionRange versionRange )
+ {
+ return null;
+ }
+}
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactFactory.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java Tue Dec 6 02:09:13 2005
@@ -39,7 +39,7 @@
reportConditions = new ArrayList();
}
- public void processArtifact( Model model, Artifact artifact, ArtifactReporter reporter, ArtifactRepository repository )
+ public void processArtifact( Model model, Artifact artifact, ArtifactReporter reporter, ArtifactRepository artifactRepository )
{
if ( iterator == null || !iterator.hasNext() ) // not initialized or reached end of the list. start again
{
@@ -55,14 +55,17 @@
case ReportCondition.SUCCESS:
{
reporter.addSuccess( reportCondition.getArtifact() );
+ break;
}
case ReportCondition.WARNING:
{
reporter.addWarning( reportCondition.getArtifact(), reportCondition.getReason() );
+ break;
}
case ReportCondition.FAILURE:
{
reporter.addFailure( reportCondition.getArtifact(), reportCondition.getReason() );
+ break;
}
}
}
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReporter.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReporter.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReporter.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReporter.java Tue Dec 6 02:09:13 2005
@@ -103,4 +103,19 @@
{
return metadataWarnings.iterator();
}
+
+ public int getFailures()
+ {
+ return artifactFailures.size();
+ }
+
+ public int getSuccesses()
+ {
+ return artifactSuccesses.size();
+ }
+
+ public int getWarnings()
+ {
+ return artifactWarnings.size();
+ }
}
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockRepositoryQueryLayer.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockRepositoryQueryLayer.java?rev=354393&r1=354392&r2=354393&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockRepositoryQueryLayer.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockRepositoryQueryLayer.java Tue Dec 6 02:09:13 2005
@@ -50,13 +50,14 @@
}
else
{
- return ( (Boolean) iterator.next() ).booleanValue();
+ boolean temp = ( (Boolean) iterator.next() ).booleanValue();
+ return temp;
}
}
public void addReturnValue( boolean queryCondition )
{
- queryConditions.add( Boolean.valueOf( queryCondition ) );
+ queryConditions.add( new Boolean( queryCondition ) );
}
public void clearList()