You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by br...@apache.org on 2006/09/05 09:00:54 UTC

svn commit: r440282 - in /maven/archiva/trunk: archiva-core/src/main/java/org/apache/maven/archiva/ archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/ archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ ar...

Author: brett
Date: Tue Sep  5 00:00:52 2006
New Revision: 440282

URL: http://svn.apache.org/viewvc?view=rev&rev=440282
Log:
[MRM-161] move the query layer tests, remove unnecessary mocks, and fix tests to test legitimate things. Remove tests for null artifact ids, etc since it is impossible that they would be created with a normal (non-mock) API and the reporting will get these errors fed through from the file positioning and model validation errors instead

Added:
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java   (contents, props changed)
      - copied, changed from r440260, maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java   (contents, props changed)
      - copied, changed from r440260, maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java   (contents, props changed)
      - copied, changed from r440260, maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java
    maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayerTest.java   (with props)
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom   (with props)
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/maven-metadata.xml   (with props)
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/snapshot-artifact/
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/
    maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom   (with props)
Removed:
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/GenericMockObject.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockArtifact.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockArtifactFactory.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockArtifactReportProcessor.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockRepositoryQueryLayer.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ReportCondition.java
    maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayer.java
Modified:
    maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java
    maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/ArtifactReporter.java
    maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java
    maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java
    maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReporter.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReportProcessorTest.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReporterTest.java
    maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessorTest.java
    maven/archiva/trunk/archiva-repository-layer/   (props changed)
    maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayer.java
    maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayer.java
    maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/RepositoryQueryLayer.java

Modified: maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java (original)
+++ maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java Tue Sep  5 00:00:52 2006
@@ -49,7 +49,7 @@
     private RepositoryConverter repositoryConverter;
 
     /**
-     * @plexus.requirement role-hint="default"
+     * @plexus.requirement
      */
     private ArtifactReporter reporter;
 

Modified: maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/ArtifactReporter.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/ArtifactReporter.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/ArtifactReporter.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/ArtifactReporter.java Tue Sep  5 00:00:52 2006
@@ -28,33 +28,18 @@
  * failures and successes for checking assertions. Later, implementations will be made to present reports on the
  * web interface, send them via mail, and so on.
  *
- * @todo i18n
+ * @todo i18n, including message formatting and parameterisation
+ * @todo remove no longer used reports!
  */
 public interface ArtifactReporter
 {
     String ROLE = ArtifactReporter.class.getName();
 
-    String NULL_MODEL = "Provided model was null";
-
-    String NULL_ARTIFACT = "Provided artifact was null";
-
-    String EMPTY_GROUP_ID = "Group id was empty or null";
-
-    String EMPTY_ARTIFACT_ID = "Artifact id was empty or null";
-
-    String EMPTY_VERSION = "Version was empty or null";
-
-    String EMPTY_DEPENDENCY_GROUP_ID = "Group id was empty or null";
-
-    String EMPTY_DEPENDENCY_ARTIFACT_ID = "Artifact id was empty or null";
-
-    String EMPTY_DEPENDENCY_VERSION = "Version was empty or null";
-
-    String NO_DEPENDENCIES = "Artifact has no dependencies";
-
     String ARTIFACT_NOT_FOUND = "Artifact does not exist in the repository";
 
     String DEPENDENCY_NOT_FOUND = "Artifact's dependency does not exist in the repository";
+
+    String DEPENDENCY_INVALID_VERSION = "Artifact's dependency contains an invalid version";
 
     void addFailure( Artifact artifact, String reason );
 

Modified: maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java Tue Sep  5 00:00:52 2006
@@ -212,13 +212,16 @@
         boolean hasFailures = false;
 
         Snapshot snapshot = metadata.getMetadata().getVersioning().getSnapshot();
-        String timestamp = snapshot.getTimestamp();
-        String buildNumber = String.valueOf( snapshot.getBuildNumber() );
 
-        Artifact artifact = createArtifact( metadata );
-        if ( !repositoryQueryLayer.containsArtifact( artifact, snapshot ) )
+        String version = metadata.getBaseVersion().replace( Artifact.SNAPSHOT_VERSION,
+                                                            snapshot.getTimestamp() + "-" + snapshot.getBuildNumber() );
+        Artifact artifact =
+            artifactFactory.createProjectArtifact( metadata.getGroupId(), metadata.getArtifactId(), version );
+        artifact.isSnapshot(); // trigger baseVersion correction
+
+        if ( !repositoryQueryLayer.containsArtifact( artifact ) )
         {
-            reporter.addFailure( metadata, "Snapshot artifact " + timestamp + "-" + buildNumber + " does not exist." );
+            reporter.addFailure( metadata, "Snapshot artifact " + version + " does not exist." );
             hasFailures = true;
         }
 
@@ -244,7 +247,8 @@
         {
             String version = (String) versions.next();
 
-            Artifact artifact = createArtifact( metadata, version );
+            Artifact artifact =
+                artifactFactory.createProjectArtifact( metadata.getGroupId(), metadata.getArtifactId(), version );
 
             if ( !repositoryQueryLayer.containsArtifact( artifact ) )
             {
@@ -287,20 +291,9 @@
         return hasFailures;
     }
 
-    /**
-     * Used to create an artifact object from a metadata base version
-     */
-    private Artifact createArtifact( RepositoryMetadata metadata )
-    {
-        return artifactFactory.createProjectArtifact( metadata.getGroupId(), metadata.getArtifactId(),
-                                                      metadata.getBaseVersion() );
-    }
-
-    /**
-     * Used to create an artifact object with a specified version
-     */
-    private Artifact createArtifact( RepositoryMetadata metadata, String version )
+    private Artifact createArtifact( RepositoryMetadata metadata, Snapshot snapshot )
     {
+        String version = metadata.getBaseVersion();
         return artifactFactory.createProjectArtifact( metadata.getGroupId(), metadata.getArtifactId(), version );
     }
 

Modified: maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java Tue Sep  5 00:00:52 2006
@@ -17,9 +17,12 @@
  */
 
 import org.apache.maven.archiva.layer.RepositoryQueryLayer;
+import org.apache.maven.archiva.layer.RepositoryQueryLayerFactory;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
+import org.apache.maven.artifact.versioning.VersionRange;
 import org.apache.maven.model.Dependency;
 import org.apache.maven.model.Model;
 
@@ -32,94 +35,54 @@
 public class DefaultArtifactReportProcessor
     implements ArtifactReportProcessor
 {
-    private static final String EMPTY_STRING = "";
-
-    // plexus components
+    /**
+     * @plexus.requirement
+     */
     private ArtifactFactory artifactFactory;
 
-    private RepositoryQueryLayer repositoryQueryLayer;
+    /**
+     * @plexus.requirement
+     */
+    private RepositoryQueryLayerFactory layerFactory;
 
     public void processArtifact( Model model, Artifact artifact, ArtifactReporter reporter,
                                  ArtifactRepository repository )
     {
-        if ( artifact == null )
-        {
-            reporter.addFailure( artifact, ArtifactReporter.NULL_ARTIFACT );
-        }
-        else
-        {
-            processArtifact( artifact, reporter );
-        }
+        RepositoryQueryLayer queryLayer = layerFactory.createRepositoryQueryLayer( repository );
+        processArtifact( artifact, reporter, queryLayer );
 
-        if ( model == null )
-        {
-            reporter.addFailure( artifact, ArtifactReporter.NULL_MODEL );
-        }
-        else
-        {
-            List dependencies = model.getDependencies();
-            processDependencies( dependencies, reporter );
-        }
+        List dependencies = model.getDependencies();
+        processDependencies( dependencies, reporter, queryLayer );
     }
 
-    private void processArtifact( Artifact artifact, ArtifactReporter reporter )
+    private void processArtifact( Artifact artifact, ArtifactReporter reporter,
+                                  RepositoryQueryLayer repositoryQueryLayer )
     {
-        boolean hasFailed = false;
-        if ( EMPTY_STRING.equals( artifact.getGroupId() ) || artifact.getGroupId() == null )
+        if ( repositoryQueryLayer.containsArtifact( artifact ) )
         {
-            reporter.addFailure( artifact, ArtifactReporter.EMPTY_GROUP_ID );
-            hasFailed = true;
+            reporter.addSuccess( artifact );
         }
-        if ( EMPTY_STRING.equals( artifact.getArtifactId() ) || artifact.getArtifactId() == null )
-        {
-            reporter.addFailure( artifact, ArtifactReporter.EMPTY_ARTIFACT_ID );
-            hasFailed = true;
-        }
-        if ( EMPTY_STRING.equals( artifact.getVersion() ) || artifact.getVersion() == null )
+        else
         {
-            reporter.addFailure( artifact, ArtifactReporter.EMPTY_VERSION );
-            hasFailed = true;
-        }
-        if ( !hasFailed )
-        {
-            if ( repositoryQueryLayer.containsArtifact( artifact ) )
-            {
-                reporter.addSuccess( artifact );
-            }
-            else
-            {
-                reporter.addFailure( artifact, ArtifactReporter.ARTIFACT_NOT_FOUND );
-            }
+            reporter.addFailure( artifact, ArtifactReporter.ARTIFACT_NOT_FOUND );
         }
     }
 
-    private void processDependencies( List dependencies, ArtifactReporter reporter )
+    private void processDependencies( List dependencies, ArtifactReporter reporter,
+                                      RepositoryQueryLayer repositoryQueryLayer )
     {
         if ( dependencies.size() > 0 )
         {
             Iterator iterator = dependencies.iterator();
             while ( iterator.hasNext() )
             {
-                boolean hasFailed = false;
                 Dependency dependency = (Dependency) iterator.next();
-                Artifact artifact = createArtifact( dependency );
-                if ( EMPTY_STRING.equals( dependency.getGroupId() ) || dependency.getGroupId() == null )
-                {
-                    reporter.addFailure( artifact, ArtifactReporter.EMPTY_DEPENDENCY_GROUP_ID );
-                    hasFailed = true;
-                }
-                if ( EMPTY_STRING.equals( dependency.getArtifactId() ) || dependency.getArtifactId() == null )
-                {
-                    reporter.addFailure( artifact, ArtifactReporter.EMPTY_DEPENDENCY_ARTIFACT_ID );
-                    hasFailed = true;
-                }
-                if ( EMPTY_STRING.equals( dependency.getVersion() ) || dependency.getVersion() == null )
-                {
-                    reporter.addFailure( artifact, ArtifactReporter.EMPTY_DEPENDENCY_VERSION );
-                    hasFailed = true;
-                }
-                if ( !hasFailed )
+
+                Artifact artifact = null;
+                try
                 {
+                    artifact = createArtifact( dependency );
+
                     if ( repositoryQueryLayer.containsArtifact( artifact ) )
                     {
                         reporter.addSuccess( artifact );
@@ -129,34 +92,20 @@
                         reporter.addFailure( artifact, ArtifactReporter.DEPENDENCY_NOT_FOUND );
                     }
                 }
+                catch ( InvalidVersionSpecificationException e )
+                {
+                    reporter.addFailure( artifact, ArtifactReporter.DEPENDENCY_INVALID_VERSION );
+                }
             }
         }
-
-    }
-
-    /**
-     * 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 )
+        throws InvalidVersionSpecificationException
     {
-        return artifactFactory.createBuildArtifact( dependency.getGroupId(), dependency.getArtifactId(),
-                                                    dependency.getVersion(), "pom" );
+        return artifactFactory.createDependencyArtifact( dependency.getGroupId(), dependency.getArtifactId(),
+                                                         VersionRange.createFromVersionSpec( dependency.getVersion() ),
+                                                         dependency.getType(), dependency.getClassifier(),
+                                                         dependency.getScope() );
     }
 }

Modified: maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReporter.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReporter.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReporter.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReporter.java Tue Sep  5 00:00:52 2006
@@ -24,7 +24,7 @@
 import java.util.List;
 
 /**
- * @plexus.component role="org.apache.maven.archiva.reporting.ArtifactReporter" role-hint="default"
+ * @plexus.component role="org.apache.maven.archiva.reporting.ArtifactReporter"
  */
 public class DefaultArtifactReporter
     implements ArtifactReporter

Modified: maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReportProcessorTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReportProcessorTest.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReportProcessorTest.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReportProcessorTest.java Tue Sep  5 00:00:52 2006
@@ -17,6 +17,7 @@
  */
 
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.model.Dependency;
 import org.apache.maven.model.Model;
 
@@ -28,77 +29,53 @@
 public class ArtifactReportProcessorTest
     extends AbstractRepositoryReportsTestCase
 {
-    private static final String EMPTY_STRING = "";
+    private static final String VALID_GROUP_ID = "groupId";
 
-    private static final String VALID = "temp";
+    private static final String VALID_ARTIFACT_ID = "artifactId";
 
-    private ArtifactReporter reporter;
+    private static final String VALID_VERSION = "1.0-alpha-1";
 
-    private Artifact artifact;
+    private ArtifactReporter reporter;
 
     private Model model;
 
-    private DefaultArtifactReportProcessor processor;
+    private ArtifactReportProcessor processor;
 
-    private static final boolean ARTIFACT_FOUND = true;
+    private ArtifactFactory artifactFactory;
 
-    private static final boolean ARTIFACT_NOT_FOUND = false;
+    private static final String INVALID = "invalid";
 
     protected void setUp()
         throws Exception
     {
         super.setUp();
-        reporter = new DefaultArtifactReporter();
-        artifact = new MockArtifact();
+        reporter = (ArtifactReporter) lookup( ArtifactReporter.ROLE );
         model = new Model();
-        processor = new DefaultArtifactReportProcessor();
-    }
+        processor = (ArtifactReportProcessor) lookup( ArtifactReportProcessor.ROLE, "default" );
 
-    public void testNullArtifact()
-    {
-        processor.processArtifact( model, null, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.NULL_ARTIFACT, result.getReason() );
+        artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
     }
 
-    public void testNoProjectDescriptor()
+    public void testArtifactFoundButNoDirectDependencies()
+        throws ReportProcessorException
     {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        processor.processArtifact( null, artifact, reporter, null );
+        Artifact artifact = createValidArtifact();
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 1, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
+        assertEquals( 0, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.NULL_MODEL, result.getReason() );
     }
 
-    public void testArtifactFoundButNoDirectDependencies()
+    private Artifact createValidArtifact()
     {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 1, reporter.getNumSuccesses() );
-        assertEquals( 0, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
+        return artifactFactory.createProjectArtifact( VALID_GROUP_ID, VALID_ARTIFACT_ID, VALID_VERSION );
     }
 
     public void testArtifactNotFound()
+        throws ReportProcessorException
     {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_NOT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        processor.processArtifact( model, artifact, reporter, null );
+        Artifact artifact = artifactFactory.createProjectArtifact( INVALID, INVALID, INVALID );
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 0, reporter.getNumSuccesses() );
         assertEquals( 1, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
@@ -108,100 +85,67 @@
     }
 
     public void testValidArtifactWithNullDependency()
+        throws ReportProcessorException
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
+        Artifact artifact = createValidArtifact();
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, VALID, VALID, VALID );
+        Dependency dependency = createValidDependency();
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
 
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 2, reporter.getNumSuccesses() );
         assertEquals( 0, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
     }
 
-    public void testValidArtifactWithValidSingleDependency()
+    private Dependency createValidDependency()
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
+        return createDependency( VALID_GROUP_ID, VALID_ARTIFACT_ID, VALID_VERSION );
+    }
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
+    public void testValidArtifactWithValidSingleDependency()
+        throws ReportProcessorException
+    {
+        Artifact artifact = createValidArtifact();
 
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, VALID, VALID, VALID );
+        Dependency dependency = createValidDependency();
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
 
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 2, reporter.getNumSuccesses() );
         assertEquals( 0, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
     }
 
     public void testValidArtifactWithValidMultipleDependencies()
+        throws ReportProcessorException
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
-
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, VALID, VALID, VALID );
+        Dependency dependency = createValidDependency();
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        Artifact artifact = createValidArtifact();
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 6, reporter.getNumSuccesses() );
         assertEquals( 0, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
     }
 
     public void testValidArtifactWithAnInvalidDependency()
+        throws ReportProcessorException
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
-
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, VALID, VALID, VALID );
-        model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
+        Dependency dependency = createValidDependency();
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_NOT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
+        model.addDependency( createDependency( INVALID, INVALID, INVALID ) );
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        Artifact artifact = createValidArtifact();
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 5, reporter.getNumSuccesses() );
         assertEquals( 1, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
@@ -211,253 +155,84 @@
         assertEquals( ArtifactReporter.DEPENDENCY_NOT_FOUND, result.getReason() );
     }
 
-    public void testEmptyGroupId()
-    {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-
-        setRequiredElements( artifact, EMPTY_STRING, VALID, VALID );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_GROUP_ID, result.getReason() );
-    }
-
-    public void testEmptyArtifactId()
-    {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-
-        setRequiredElements( artifact, VALID, EMPTY_STRING, VALID );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_ARTIFACT_ID, result.getReason() );
-    }
-
-    public void testEmptyVersion()
-    {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-
-        setRequiredElements( artifact, VALID, VALID, EMPTY_STRING );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_VERSION, result.getReason() );
-    }
-
-    public void testNullGroupId()
-    {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-
-        setRequiredElements( artifact, null, VALID, VALID );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_GROUP_ID, result.getReason() );
-    }
-
-    public void testNullArtifactId()
+    public void testValidArtifactWithInvalidDependencyGroupId()
+        throws ReportProcessorException
     {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-
-        setRequiredElements( artifact, VALID, null, VALID );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_ARTIFACT_ID, result.getReason() );
-    }
+        Artifact artifact = createValidArtifact();
 
-    public void testNullVersion()
-    {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
+        Dependency dependency = createDependency( INVALID, VALID_ARTIFACT_ID, VALID_VERSION );
+        model.addDependency( dependency );
 
-        setRequiredElements( artifact, VALID, VALID, null );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
+        processor.processArtifact( model, artifact, reporter, repository );
+        assertEquals( 1, reporter.getNumSuccesses() );
         assertEquals( 1, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
 
         Iterator failures = reporter.getArtifactFailureIterator();
         ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_VERSION, result.getReason() );
-    }
-
-    public void testMultipleFailures()
-    {
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-        processor.setRepositoryQueryLayer( queryLayer );
-
-        setRequiredElements( artifact, null, null, null );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 0, reporter.getNumSuccesses() );
-        assertEquals( 3, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_GROUP_ID, result.getReason() );
-        result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_ARTIFACT_ID, result.getReason() );
-        result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_VERSION, result.getReason() );
+        assertEquals( ArtifactReporter.DEPENDENCY_NOT_FOUND, result.getReason() );
     }
 
-    public void testValidArtifactWithInvalidDependencyGroupId()
+    private Dependency createDependency( String o, String valid, String s )
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
-
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
         Dependency dependency = new Dependency();
-        setRequiredElements( dependency, null, VALID, VALID );
-        model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
-        assertEquals( 1, reporter.getNumSuccesses() );
-        assertEquals( 1, reporter.getNumFailures() );
-        assertEquals( 0, reporter.getNumWarnings() );
-
-        Iterator failures = reporter.getArtifactFailureIterator();
-        ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_DEPENDENCY_GROUP_ID, result.getReason() );
+        dependency.setGroupId( o );
+        dependency.setArtifactId( valid );
+        dependency.setVersion( s );
+        return dependency;
     }
 
     public void testValidArtifactWithInvalidDependencyArtifactId()
+        throws ReportProcessorException
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
+        Artifact artifact = createValidArtifact();
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, VALID, null, VALID );
+        Dependency dependency = createDependency( VALID_GROUP_ID, INVALID, VALID_VERSION );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
 
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 1, reporter.getNumSuccesses() );
         assertEquals( 1, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
 
         Iterator failures = reporter.getArtifactFailureIterator();
         ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_DEPENDENCY_ARTIFACT_ID, result.getReason() );
+        assertEquals( ArtifactReporter.DEPENDENCY_NOT_FOUND, result.getReason() );
     }
 
-    public void testValidArtifactWithInvalidDependencyVersion()
+    public void testValidArtifactWithIncorrectDependencyVersion()
+        throws ReportProcessorException
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
+        Artifact artifact = createValidArtifact();
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, VALID, VALID, null );
+        Dependency dependency = createDependency( VALID_GROUP_ID, VALID_ARTIFACT_ID, INVALID );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
 
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 1, reporter.getNumSuccesses() );
         assertEquals( 1, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
 
         Iterator failures = reporter.getArtifactFailureIterator();
         ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_DEPENDENCY_VERSION, result.getReason() );
+        assertEquals( ArtifactReporter.DEPENDENCY_NOT_FOUND, result.getReason() );
     }
 
-    public void testValidArtifactWithInvalidDependencyRequiredElements()
+    public void testValidArtifactWithInvalidDependencyVersion()
+        throws ReportProcessorException
     {
-        MockArtifactFactory artifactFactory = new MockArtifactFactory();
-        processor.setArtifactFactory( artifactFactory );
+        Artifact artifact = createValidArtifact();
 
-        setRequiredElements( artifact, VALID, VALID, VALID );
-        MockRepositoryQueryLayer queryLayer = new MockRepositoryQueryLayer();
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
-
-        Dependency dependency = new Dependency();
-        setRequiredElements( dependency, null, null, null );
+        Dependency dependency = createDependency( VALID_GROUP_ID, VALID_ARTIFACT_ID, "[" );
         model.addDependency( dependency );
-        queryLayer.addReturnValue( ARTIFACT_FOUND );
 
-        processor.setRepositoryQueryLayer( queryLayer );
-        processor.processArtifact( model, artifact, reporter, null );
+        processor.processArtifact( model, artifact, reporter, repository );
         assertEquals( 1, reporter.getNumSuccesses() );
-        assertEquals( 3, reporter.getNumFailures() );
+        assertEquals( 1, reporter.getNumFailures() );
         assertEquals( 0, reporter.getNumWarnings() );
 
         Iterator failures = reporter.getArtifactFailureIterator();
         ArtifactResult result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_DEPENDENCY_GROUP_ID, result.getReason() );
-        result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_DEPENDENCY_ARTIFACT_ID, result.getReason() );
-        result = (ArtifactResult) failures.next();
-        assertEquals( ArtifactReporter.EMPTY_DEPENDENCY_VERSION, result.getReason() );
-    }
-
-    protected void tearDown()
-        throws Exception
-    {
-        model = null;
-        artifact = null;
-        reporter = null;
-        super.tearDown();
-    }
-
-    private void setRequiredElements( Artifact artifact, String groupId, String artifactId, String version )
-    {
-        artifact.setGroupId( groupId );
-        artifact.setArtifactId( artifactId );
-        artifact.setVersion( version );
-    }
-
-    private void setRequiredElements( Dependency dependency, String groupId, String artifactId, String version )
-    {
-        dependency.setGroupId( groupId );
-        dependency.setArtifactId( artifactId );
-        dependency.setVersion( version );
+        assertEquals( ArtifactReporter.DEPENDENCY_INVALID_VERSION, result.getReason() );
     }
 }

Modified: maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReporterTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReporterTest.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReporterTest.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/ArtifactReporterTest.java Tue Sep  5 00:00:52 2006
@@ -33,18 +33,15 @@
 
     private Artifact artifact;
 
-    private MockArtifactReportProcessor processor;
-
     private Model model;
 
     protected void setUp()
         throws Exception
     {
         super.setUp();
-        reporter = new DefaultArtifactReporter();
+        reporter = (ArtifactReporter) lookup( ArtifactReporter.ROLE );
         ArtifactFactory artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
         artifact = artifactFactory.createBuildArtifact( "groupId", "artifactId", "1.0-alpha-1", "type" );
-        processor = new MockArtifactReportProcessor();
         Versioning versioning = new Versioning();
         versioning.addVersion( "1.0-alpha-1" );
         versioning.setLastUpdated( "20050611.202020" );
@@ -53,11 +50,12 @@
 
     public void testArtifactReporterSingleSuccess()
     {
-        processor.addReturnValue( ReportCondition.SUCCESS, artifact, "all is good" );
-        processor.processArtifact( model, artifact, reporter, null );
+        reporter.addSuccess( artifact );
+
+        assertEquals( 1, reporter.getNumSuccesses() );
+
         Iterator success = reporter.getArtifactSuccessIterator();
         assertTrue( success.hasNext() );
-        assertEquals( 1, reporter.getNumSuccesses() );
         Artifact result = ( (ArtifactResult) success.next() ).getArtifact();
         assertEquals( "groupId", result.getGroupId() );
         assertEquals( "artifactId", result.getArtifactId() );
@@ -67,12 +65,9 @@
 
     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 );
+        reporter.addSuccess( artifact );
+        reporter.addSuccess( artifact );
+        reporter.addSuccess( artifact );
         Iterator success = reporter.getArtifactSuccessIterator();
         assertTrue( success.hasNext() );
         int i;
@@ -88,8 +83,7 @@
 
     public void testArtifactReporterSingleFailure()
     {
-        processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed once" );
-        processor.processArtifact( model, artifact, reporter, null );
+        reporter.addFailure( artifact, "failed once" );
         Iterator failure = reporter.getArtifactFailureIterator();
         assertTrue( failure.hasNext() );
         failure.next();
@@ -101,10 +95,9 @@
 
     public void testArtifactReporterMultipleFailure()
     {
-        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 );
+        reporter.addFailure( artifact, "failed once" );
+        reporter.addFailure( artifact, "failed twice" );
+        reporter.addFailure( artifact, "failed thrice" );
         Iterator failure = reporter.getArtifactFailureIterator();
         assertTrue( failure.hasNext() );
         int i;
@@ -120,10 +113,9 @@
 
     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 );
+        reporter.addFailure( artifact, "failed once" );
+        reporter.addFailure( artifact, "failed twice" );
+        reporter.addFailure( artifact, "failed thrice" );
         Iterator failure = reporter.getArtifactFailureIterator();
         assertEquals( "failed once", ( (ArtifactResult) failure.next() ).getReason() );
         assertEquals( "failed twice", ( (ArtifactResult) failure.next() ).getReason() );
@@ -132,8 +124,7 @@
 
     public void testArtifactReporterSingleWarning()
     {
-        processor.addReturnValue( ReportCondition.WARNING, artifact, "you've been warned" );
-        processor.processArtifact( model, artifact, reporter, null );
+        reporter.addWarning( artifact, "you've been warned" );
         Iterator warning = reporter.getArtifactWarningIterator();
         assertTrue( warning.hasNext() );
         warning.next();
@@ -145,10 +136,10 @@
 
     public void testArtifactReporterMultipleWarning()
     {
-        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 );
+        reporter.addWarning( artifact, "i'm warning you" );
+        reporter.addWarning( artifact, "you have to stop now" );
+        reporter.addWarning( artifact, "all right... that does it!" );
+
         Iterator warning = reporter.getArtifactWarningIterator();
         assertTrue( warning.hasNext() );
         int i;
@@ -164,24 +155,13 @@
 
     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 );
+        reporter.addWarning( artifact, "i'm warning you" );
+        reporter.addWarning( artifact, "you have to stop now" );
+        reporter.addWarning( artifact, "all right... that does it!" );
+
         Iterator warning = reporter.getArtifactWarningIterator();
         assertEquals( "i'm warning you", ( (ArtifactResult) warning.next() ).getReason() );
         assertEquals( "you have to stop now", ( (ArtifactResult) warning.next() ).getReason() );
         assertEquals( "all right... that does it!", ( (ArtifactResult) warning.next() ).getReason() );
     }
-
-    protected void tearDown()
-        throws Exception
-    {
-        model = null;
-        processor.clearList();
-        processor = null;
-        reporter = null;
-        super.tearDown();
-    }
-
 }

Modified: maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessorTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessorTest.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessorTest.java (original)
+++ maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessorTest.java Tue Sep  5 00:00:52 2006
@@ -316,7 +316,8 @@
         RepositoryMetadataResult result = (RepositoryMetadataResult) failures.next();
         assertEquals( "check metadata", metadata, result.getMetadata() );
         // TODO: should be more robust
-        assertEquals( "check reason", "Snapshot artifact 20050611.202024-2 does not exist.", result.getReason() );
+        assertEquals( "check reason", "Snapshot artifact 1.0-alpha-1-20050611.202024-2 does not exist.",
+                      result.getReason() );
         assertFalse( "check no more failures", failures.hasNext() );
     }
 

Propchange: maven/archiva/trunk/archiva-repository-layer/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Sep  5 00:00:52 2006
@@ -0,0 +1 @@
+*.iml

Modified: maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayer.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayer.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayer.java (original)
+++ maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayer.java Tue Sep  5 00:00:52 2006
@@ -18,27 +18,35 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.metadata.Metadata;
-import org.apache.maven.artifact.repository.metadata.Snapshot;
+
+import java.util.List;
 
 
 /**
  *
  */
 public class CachedRepositoryQueryLayer
-    extends AbstractRepositoryQueryLayer
+    implements RepositoryQueryLayer
 {
     private Cache cache;
 
     public static final double CACHE_HIT_RATIO = 0.5;
 
-    public CachedRepositoryQueryLayer( ArtifactRepository repository )
+    private RepositoryQueryLayer layer;
+
+    public CachedRepositoryQueryLayer( RepositoryQueryLayer layer )
     {
-        this.repository = repository;
+        this.layer = layer;
 
         cache = new Cache( CACHE_HIT_RATIO );
     }
 
+    public CachedRepositoryQueryLayer( RepositoryQueryLayer layer, Cache cache )
+    {
+        this.cache = cache;
+        this.layer = layer;
+    }
+
     public double getCacheHitRate()
     {
         return cache.getHitRate();
@@ -48,11 +56,11 @@
     {
         boolean artifactFound = true;
 
-        String artifactPath = repository.getBasedir() + "/" + repository.pathOf( artifact );
+        String artifactPath = layer.getRepository().pathOf( artifact );
 
         if ( cache.get( artifactPath ) == null )
         {
-            artifactFound = super.containsArtifact( artifact );
+            artifactFound = layer.containsArtifact( artifact );
             if ( artifactFound )
             {
                 cache.put( artifactPath, artifactPath );
@@ -62,38 +70,22 @@
         return artifactFound;
     }
 
-    public boolean containsArtifact( Artifact artifact, Snapshot snapshot )
+    public List getVersions( Artifact artifact )
+        throws RepositoryQueryLayerException
     {
-        boolean artifactFound = true;
+        List list = (List) cache.get( artifact.getId() );
 
-        String path = getSnapshotArtifactRepositoryPath( artifact, snapshot );
-
-        if ( cache.get( path ) == null )
+        if ( list == null )
         {
-            artifactFound = super.containsArtifact( artifact, snapshot );
-            if ( artifactFound )
-            {
-                cache.put( path, path );
-            }
+            list = layer.getVersions( artifact );
+            cache.put( artifact.getId(), list );
         }
 
-        return artifactFound;
+        return list;
     }
 
-    /**
-     * Override method to utilize the cache
-     */
-    protected Metadata getMetadata( Artifact artifact )
-        throws RepositoryQueryLayerException
+    public ArtifactRepository getRepository()
     {
-        Metadata metadata = (Metadata) cache.get( artifact.getId() );
-
-        if ( metadata == null )
-        {
-            metadata = super.getMetadata( artifact );
-            cache.put( artifact.getId(), metadata );
-        }
-
-        return metadata;
+        return layer.getRepository();
     }
 }

Modified: maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayer.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayer.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayer.java (original)
+++ maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayer.java Tue Sep  5 00:00:52 2006
@@ -16,16 +16,84 @@
  * limitations under the License.
  */
 
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.metadata.ArtifactRepositoryMetadata;
+import org.apache.maven.artifact.repository.metadata.Metadata;
+import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.List;
 
 /**
  *
  */
 public class DefaultRepositoryQueryLayer
-    extends AbstractRepositoryQueryLayer
+    implements RepositoryQueryLayer
 {
+    protected ArtifactRepository repository;
+
     public DefaultRepositoryQueryLayer( ArtifactRepository repository )
     {
         this.repository = repository;
+    }
+
+    public boolean containsArtifact( Artifact artifact )
+    {
+        File f = new File( repository.getBasedir(), repository.pathOf( artifact ) );
+        return f.exists();
+    }
+
+    public List getVersions( Artifact artifact )
+        throws RepositoryQueryLayerException
+    {
+        Metadata metadata = getMetadata( artifact );
+
+        return metadata.getVersioning().getVersions();
+    }
+
+    public ArtifactRepository getRepository()
+    {
+        return repository;
+    }
+
+    private Metadata getMetadata( Artifact artifact )
+        throws RepositoryQueryLayerException
+    {
+        Metadata metadata;
+
+        ArtifactRepositoryMetadata repositoryMetadata = new ArtifactRepositoryMetadata( artifact );
+        String path = repository.pathOfRemoteRepositoryMetadata( repositoryMetadata );
+        File metadataFile = new File( repository.getBasedir(), path );
+        if ( metadataFile.exists() )
+        {
+            MetadataXpp3Reader reader = new MetadataXpp3Reader();
+            try
+            {
+                metadata = reader.read( new FileReader( metadataFile ) );
+            }
+            catch ( FileNotFoundException e )
+            {
+                throw new RepositoryQueryLayerException( "Error occurred while attempting to read metadata file", e );
+            }
+            catch ( IOException e )
+            {
+                throw new RepositoryQueryLayerException( "Error occurred while attempting to read metadata file", e );
+            }
+            catch ( XmlPullParserException e )
+            {
+                throw new RepositoryQueryLayerException( "Error occurred while attempting to read metadata file", e );
+            }
+        }
+        else
+        {
+            throw new RepositoryQueryLayerException( "Metadata not found: " + metadataFile.getAbsolutePath() );
+        }
+
+        return metadata;
     }
 }

Modified: maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/RepositoryQueryLayer.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/RepositoryQueryLayer.java?view=diff&rev=440282&r1=440281&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/RepositoryQueryLayer.java (original)
+++ maven/archiva/trunk/archiva-repository-layer/src/main/java/org/apache/maven/archiva/layer/RepositoryQueryLayer.java Tue Sep  5 00:00:52 2006
@@ -17,7 +17,7 @@
  */
 
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.metadata.Snapshot;
+import org.apache.maven.artifact.repository.ArtifactRepository;
 
 import java.util.List;
 
@@ -30,8 +30,8 @@
 
     boolean containsArtifact( Artifact artifact );
 
-    boolean containsArtifact( Artifact artifact, Snapshot snapshot );
-
     List getVersions( Artifact artifact )
         throws RepositoryQueryLayerException;
+
+    ArtifactRepository getRepository();
 }

Copied: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java (from r440260, maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java)
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java?view=diff&rev=440282&p1=maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java&r1=440260&p2=maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java (original)
+++ maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java Tue Sep  5 00:00:52 2006
@@ -1,4 +1,4 @@
-package org.apache.maven.archiva.reporting;
+package org.apache.maven.archiva.layer;
 
 /*
  * Copyright 2005-2006 The Apache Software Foundation.
@@ -16,14 +16,11 @@
  * limitations under the License.
  */
 
-import org.apache.maven.archiva.layer.CachedRepositoryQueryLayer;
-import org.apache.maven.archiva.layer.RepositoryQueryLayerException;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
-import org.apache.maven.artifact.repository.metadata.Snapshot;
 import org.codehaus.plexus.PlexusTestCase;
 
 import java.io.File;
@@ -39,7 +36,7 @@
 
     protected ArtifactRepository repository;
 
-    protected CachedRepositoryQueryLayer queryLayer;
+    protected RepositoryQueryLayer queryLayer;
 
     protected void setUp()
         throws Exception
@@ -71,25 +68,17 @@
 
     public void testContainsSnapshotArtifactTrue()
     {
-        Snapshot snapshot = new Snapshot();
-        snapshot.setTimestamp( "20050611.202024" );
-        snapshot.setBuildNumber( 1 );
-
-        Artifact artifact = getArtifact( "groupId", "snapshot-artifact", "1.0-alpha-1-SNAPSHOT" );
-        assertTrue( "check for snapshot artifact", queryLayer.containsArtifact( artifact, snapshot ) );
+        Artifact artifact = getArtifact( "groupId", "snapshot-artifact", "1.0-alpha-1-20050611.202024-1" );
+        assertTrue( "check for snapshot artifact", queryLayer.containsArtifact( artifact ) );
     }
 
     public void testContainsSnapshotArtifactFalse()
     {
-        Snapshot snapshot = new Snapshot();
-        snapshot.setTimestamp( "20050611.202024" );
-        snapshot.setBuildNumber( 2 );
-
-        Artifact artifact = getArtifact( "groupId", "snapshot-artifact", "1.0-alpha-1-SNAPSHOT" );
-        assertFalse( "check for non-existent snapshot artifact", queryLayer.containsArtifact( artifact, snapshot ) );
+        Artifact artifact = getArtifact( "groupId", "snapshot-artifact", "1.0-alpha-1-20050611.202024-2" );
+        assertFalse( "check for non-existent snapshot artifact", queryLayer.containsArtifact( artifact ) );
     }
 
-    public void testArtifactVersionsTrue()
+    public void testArtifactVersions()
         throws Exception
     {
         Artifact artifact = getArtifact( "groupId", "artifactId", "ignored" );
@@ -97,20 +86,7 @@
         List versions = queryLayer.getVersions( artifact );
 
         assertTrue( "check version 1.0-alpha-1", versions.contains( "1.0-alpha-1" ) );
-        assertTrue( "check version 1.0-alpha-2", versions.contains( "1.0-alpha-2" ) );
-        assertFalse( "check version 1.0-alpha-3", versions.contains( "1.0-alpha-3" ) );
-    }
-
-    public void testArtifactVersionsFalse()
-        throws Exception
-    {
-        Artifact artifact = getArtifact( "groupId", "artifactId", "ignored" );
-
-        List versions = queryLayer.getVersions( artifact );
-
-        assertTrue( "check version 1.0-alpha-1", versions.contains( "1.0-alpha-1" ) );
-        assertTrue( "check version 1.0-alpha-2", versions.contains( "1.0-alpha-2" ) );
-        assertFalse( "check version 1.0-alpha-3", versions.contains( "1.0-alpha-3" ) );
+        assertFalse( "check version 1.0-alpha-2", versions.contains( "1.0-alpha-2" ) );
     }
 
     public void testArtifactVersionsError()
@@ -130,15 +106,8 @@
 
     private Artifact getArtifact( String groupId, String artifactId, String version )
     {
-        return artifactFactory.createBuildArtifact( groupId, artifactId, version, "pom" );
-    }
-
-    protected void tearDown()
-        throws Exception
-    {
-        release( artifactFactory );
-        super.tearDown();
-        artifactFactory = null;
-        repository = null;
+        Artifact projectArtifact = artifactFactory.createProjectArtifact( groupId, artifactId, version );
+        projectArtifact.isSnapshot();
+        return projectArtifact;
     }
 }

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/AbstractRepositoryQueryLayerTestCase.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Copied: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java (from r440260, maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java)
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java?view=diff&rev=440282&p1=maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java&r1=440260&p2=maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java (original)
+++ maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java Tue Sep  5 00:00:52 2006
@@ -1,4 +1,4 @@
-package org.apache.maven.archiva.reporting;
+package org.apache.maven.archiva.layer;
 
 /*
  * Copyright 2005-2006 The Apache Software Foundation.
@@ -17,7 +17,6 @@
  */
 
 import junit.framework.TestCase;
-import org.apache.maven.archiva.layer.Cache;
 
 /**
  *

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CacheTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Copied: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java (from r440260, maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java)
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java?view=diff&rev=440282&p1=maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java&r1=440260&p2=maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java&r2=440282
==============================================================================
--- maven/archiva/trunk/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java (original)
+++ maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java Tue Sep  5 00:00:52 2006
@@ -1,6 +1,4 @@
-package org.apache.maven.archiva.reporting;
-
-import org.apache.maven.archiva.layer.CachedRepositoryQueryLayer;
+package org.apache.maven.archiva.layer;
 
 /*
  * Copyright 2005-2006 The Apache Software Foundation.
@@ -24,37 +22,40 @@
 public class CachedRepositoryQueryLayerTest
     extends AbstractRepositoryQueryLayerTestCase
 {
+    private Cache cache;
 
     protected void setUp()
         throws Exception
     {
         super.setUp();
 
-        queryLayer = new CachedRepositoryQueryLayer( repository );
+        cache = new Cache( CachedRepositoryQueryLayer.CACHE_HIT_RATIO );
+
+        queryLayer = new CachedRepositoryQueryLayer( new DefaultRepositoryQueryLayer( repository ), cache );
     }
 
     public void testUseFileCache()
     {
         testContainsArtifactTrue();
-        assertEquals( 0, queryLayer.getCacheHitRate(), 0 );
+        assertEquals( 0, cache.getHitRate(), 0 );
         testContainsArtifactTrue();
-        assertEquals( CachedRepositoryQueryLayer.CACHE_HIT_RATIO, queryLayer.getCacheHitRate(), 0 );
+        assertEquals( CachedRepositoryQueryLayer.CACHE_HIT_RATIO, cache.getHitRate(), 0 );
     }
 
     public void testUseMetadataCache()
         throws Exception
     {
-        testArtifactVersionsTrue();
-        assertEquals( 0, queryLayer.getCacheHitRate(), 0 );
-        testArtifactVersionsTrue();
-        assertEquals( CachedRepositoryQueryLayer.CACHE_HIT_RATIO, queryLayer.getCacheHitRate(), 0 );
+        testArtifactVersions();
+        assertEquals( 0, cache.getHitRate(), 0 );
+        testArtifactVersions();
+        assertEquals( CachedRepositoryQueryLayer.CACHE_HIT_RATIO, cache.getHitRate(), 0 );
     }
 
     public void testUseFileCacheOnSnapshot()
     {
         testContainsSnapshotArtifactTrue();
-        assertEquals( 0, queryLayer.getCacheHitRate(), 0 );
+        assertEquals( 0, cache.getHitRate(), 0 );
         testContainsSnapshotArtifactTrue();
-        assertEquals( CachedRepositoryQueryLayer.CACHE_HIT_RATIO, queryLayer.getCacheHitRate(), 0 );
+        assertEquals( CachedRepositoryQueryLayer.CACHE_HIT_RATIO, cache.getHitRate(), 0 );
     }
 }

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/CachedRepositoryQueryLayerTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayerTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayerTest.java?view=auto&rev=440282
==============================================================================
--- maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayerTest.java (added)
+++ maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayerTest.java Tue Sep  5 00:00:52 2006
@@ -0,0 +1,29 @@
+package org.apache.maven.archiva.layer;
+
+/*
+ * Copyright 2005-2006 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.
+ */
+
+public class DefaultRepositoryQueryLayerTest
+    extends AbstractRepositoryQueryLayerTestCase
+{
+    protected void setUp()
+        throws Exception
+    {
+        super.setUp();
+
+        queryLayer = new DefaultRepositoryQueryLayer( repository );
+    }
+}

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/java/org/apache/maven/archiva/layer/DefaultRepositoryQueryLayerTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar?view=auto&rev=440282
==============================================================================
Binary files /tmp/tmpDOwuF_ and /tmp/tmpwOfOxT differ

Added: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom?view=auto&rev=440282
==============================================================================
--- maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom (added)
+++ maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom Tue Sep  5 00:00:52 2006
@@ -0,0 +1,6 @@
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>groupId</groupId>
+  <artifactId>artifactId</artifactId>
+  <version>1.0-alpha-1</version>
+</project>

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/maven-metadata.xml
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/maven-metadata.xml?view=auto&rev=440282
==============================================================================
--- maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/maven-metadata.xml (added)
+++ maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/maven-metadata.xml Tue Sep  5 00:00:52 2006
@@ -0,0 +1,26 @@
+<!--
+  ~ Copyright 2005-2006 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.
+  -->
+
+<metadata>
+  <groupId>groupId</groupId>
+  <artifactId>artifactId</artifactId>
+  <version>1.0-alpha-1</version>
+  <versioning>
+    <versions>
+      <version>1.0-alpha-1</version>
+    </versions>
+  </versioning>
+</metadata>

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/artifactId/maven-metadata.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom?view=auto&rev=440282
==============================================================================
    (empty)

Propchange: maven/archiva/trunk/archiva-repository-layer/src/test/repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom
------------------------------------------------------------------------------
    svn:eol-style = native