Author: joakime
Date: Wed Feb 14 11:13:36 2007
New Revision: 507658

URL: http://svn.apache.org/viewvc?view=rev&rev=507658
Log:
Fixing test failures since merge and changes in archiva-reports-standard

Added:
    
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
   (with props)
    
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
   (with props)
Modified:
    
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/main/java/org/apache/maven/archiva/converter/DefaultRepositoryConverter.java
    
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/RepositoryConverterTest.java
    
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/resources/org/apache/maven/archiva/converter/RepositoryConverterTest.xml

Modified: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/main/java/org/apache/maven/archiva/converter/DefaultRepositoryConverter.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-MRM-239/archiva-converter/src/main/java/org/apache/maven/archiva/converter/DefaultRepositoryConverter.java?view=diff&rev=507658&r1=507657&r2=507658
==============================================================================
--- 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/main/java/org/apache/maven/archiva/converter/DefaultRepositoryConverter.java
 (original)
+++ 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/main/java/org/apache/maven/archiva/converter/DefaultRepositoryConverter.java
 Wed Feb 14 11:13:36 2007
@@ -381,13 +381,13 @@
     private void addWarning( Artifact artifact, String message )
     {
         // TODO: should we be able to identify/fix these?
-        reportingDatabase.getArtifactDatabase().addWarning( artifact, null, 
null, message );
+        reportingDatabase.getArtifactDatabase().addWarning( artifact, 
"repo-convertor", "-", message );
     }
 
     private void addFailureWithReason( Artifact artifact, String reason )
     {
         // TODO: should we be able to identify/fix these?
-        reportingDatabase.getArtifactDatabase().addFailure( artifact, null, 
null, reason );
+        reportingDatabase.getArtifactDatabase().addFailure( artifact, 
"repo-convertor", "-", reason );
     }
 
     private boolean copyPom( Artifact artifact, ArtifactRepository 
targetRepository, FileTransaction transaction )

Added: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java?view=auto&rev=507658
==============================================================================
--- 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
 (added)
+++ 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
 Wed Feb 14 11:13:36 2007
@@ -0,0 +1,44 @@
+package org.apache.maven.archiva.converter;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * AllTests 
+ *
+ * @author <a href="mailto:[EMAIL PROTECTED]">Joakim Erdfelt</a>
+ * @version $Id$
+ */
+public class AllTests
+{
+
+    public static Test suite()
+    {
+        TestSuite suite = new TestSuite( "Test for 
org.apache.maven.archiva.converter" );
+        //$JUnit-BEGIN$
+        suite.addTest( 
org.apache.maven.archiva.converter.transaction.AllTests.suite() );
+        suite.addTestSuite( RepositoryConverterTest.class );
+        //$JUnit-END$
+        return suite;
+    }
+
+}

Propchange: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Propchange: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/AllTests.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/RepositoryConverterTest.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/RepositoryConverterTest.java?view=diff&rev=507658&r1=507657&r2=507658
==============================================================================
--- 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/RepositoryConverterTest.java
 (original)
+++ 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/RepositoryConverterTest.java
 Wed Feb 14 11:13:36 2007
@@ -20,8 +20,12 @@
  */
 
 import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang.StringUtils;
+import org.apache.maven.archiva.reporting.database.ArtifactResultsDatabase;
+import org.apache.maven.archiva.reporting.database.MetadataResultsDatabase;
 import org.apache.maven.archiva.reporting.database.ReportingDatabase;
 import org.apache.maven.archiva.reporting.model.ArtifactResults;
+import org.apache.maven.archiva.reporting.model.MetadataResults;
 import org.apache.maven.archiva.reporting.model.Result;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.factory.ArtifactFactory;
@@ -77,6 +81,8 @@
         ArtifactRepositoryFactory factory = (ArtifactRepositoryFactory) 
lookup( ArtifactRepositoryFactory.ROLE );
 
         ArtifactRepositoryLayout layout = (ArtifactRepositoryLayout) lookup( 
ArtifactRepositoryLayout.ROLE, "legacy" );
+        
+        reportingDatabase = (ReportingDatabase) lookup( ReportingDatabase.ROLE 
);
 
         File sourceBase = getTestFile( "src/test/source-repository" );
         sourceRepository =
@@ -96,6 +102,57 @@
 
         i18n = (I18N) lookup( I18N.ROLE );
     }
+    
+
+    protected void tearDown()
+        throws Exception
+    {
+        if ( reportingDatabase != null )
+        {
+            ArtifactResultsDatabase artifactDatabase = 
reportingDatabase.getArtifactDatabase();
+
+            if ( artifactDatabase != null )
+            {
+                // Clean out any entries between runs.
+                for ( Iterator it = artifactDatabase.getIterator(); 
it.hasNext(); )
+                {
+                    ArtifactResults result = (ArtifactResults) it.next();
+                    try
+                    {
+                        artifactDatabase.remove( result );
+                    }
+                    catch ( Exception e )
+                    {
+                        // ignore
+                    }
+                }
+            }
+
+            MetadataResultsDatabase metadataDatabase = 
reportingDatabase.getMetadataDatabase();
+
+            if ( metadataDatabase != null )
+            {
+                // Clean out any entries between runs.
+                for ( Iterator it = metadataDatabase.getIterator(); 
it.hasNext(); )
+                {
+                    MetadataResults result = (MetadataResults) it.next();
+                    try
+                    {
+                        metadataDatabase.remove( result );
+                    }
+                    catch ( Exception e )
+                    {
+                        // ignore
+                    }
+                }
+            }
+
+            // Free it from plexus too!
+            release( reportingDatabase );
+        }
+
+        super.tearDown();
+    }
 
     private void copyDirectoryStructure( File sourceDirectory, File 
destinationDirectory )
         throws IOException
@@ -317,7 +374,7 @@
         snapshotMetadataFile.delete();
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkSuccess();
+        checkCounts( 0, 0, 0 );
 
         File artifactFile = new File( targetRepository.getBasedir(), 
targetRepository.pathOf( artifact ) );
         assertTrue( "Check artifact created", artifactFile.exists() );
@@ -360,7 +417,7 @@
         snapshotMetadataFile.delete();
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkSuccess();
+        checkCounts( 0, 0, 0 );
 
         File artifactFile = new File( targetRepository.getBasedir(), 
targetRepository.pathOf( artifact ) );
         assertTrue( "Check artifact created", artifactFile.exists() );
@@ -447,7 +504,7 @@
         snapshotMetadataFile.delete();
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkSuccess();
+        checkCounts( 0, 0, 0 );
 
         File artifactFile = new File( targetRepository.getBasedir(), 
targetRepository.pathOf( artifact ) );
         assertTrue( "Check artifact created", artifactFile.exists() );
@@ -480,10 +537,8 @@
 
         Artifact artifact = createArtifact( "test", "noPomArtifact", "1.0.0" );
         repositoryConverter.convert( artifact, targetRepository );
-        assertEquals( "check no errors", 0, reportingDatabase.getNumFailures() 
);
-        assertEquals( "check warnings", 1, reportingDatabase.getNumWarnings() 
);
+        checkCounts( 0, 1, 0 );
         assertEquals( "check warning message", getI18nString( 
"warning.missing.pom" ), getWarning().getReason() );
-        assertEquals( "check no notices", 0, reportingDatabase.getNumNotices() 
);
 
         File artifactFile = new File( targetRepository.getBasedir(), 
targetRepository.pathOf( artifact ) );
         assertTrue( "Check artifact created", artifactFile.exists() );
@@ -507,7 +562,7 @@
         file.delete();
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkFailure();
+        checkCounts( 1, 0, 0 );
         assertEquals( "check failure message", getI18nString( 
"failure.incorrect.md5" ), getFailure().getReason() );
 
         assertFalse( "Check artifact not created", file.exists() );
@@ -528,8 +583,8 @@
         file.delete();
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkFailure();
-        assertEquals( "check failure message", getI18nString( 
"failure.incorrect.sha1" ), getFailure().getReason() );
+        checkCounts( 1, 0, 0 );
+        assertHasFailureReason( getI18nString( "failure.incorrect.sha1" ) );
 
         assertFalse( "Check artifact not created", file.exists() );
 
@@ -565,7 +620,7 @@
         Thread.sleep( SLEEP_MILLIS );
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkSuccess();
+        checkCounts( 0, 0, 0 );
 
         compareFiles( sourceFile, targetFile );
         compareFiles( sourcePomFile, targetPomFile );
@@ -601,9 +656,9 @@
         Thread.sleep( SLEEP_MILLIS );
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkFailure();
-        assertEquals( "Check failure message", getI18nString( 
"failure.target.already.exists" ),
-                      getFailure().getReason() );
+        checkCounts( 1, 0, 0 );
+        
+        assertHasFailureReason( getI18nString( "failure.target.already.exists" 
) );
 
         assertEquals( "Check unmodified", origTime, targetFile.lastModified() 
);
         assertEquals( "Check unmodified", origPomTime, 
targetPomFile.lastModified() );
@@ -638,7 +693,7 @@
         sourcePomFile.setLastModified( dateFormat.parse( "2006-02-02" 
).getTime() );
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkSuccess();
+        checkCounts( 0, 0, 0 );
 
         compareFiles( sourceFile, targetFile );
         compareFiles( sourcePomFile, targetPomFile );
@@ -668,7 +723,7 @@
         File targetPomFile = new File( targetRepository.getBasedir(), 
targetRepository.pathOf( pomArtifact ) );
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkSuccess();
+        checkCounts( 0, 0, 0 );
 
         assertTrue( "Check source file exists", sourceFile.exists() );
         assertTrue( "Check source POM exists", sourcePomFile.exists() );
@@ -741,7 +796,7 @@
         File artifactFile = new File( targetRepository.getBasedir(), 
targetRepository.pathOf( artifact ) );
 
         repositoryConverter.convert( artifact, targetRepository );
-        checkFailure();
+        checkCounts( 1, 0, 0 );
         String pattern = "^" + getI18nString( "failure.invalid.source.pom" 
).replaceFirst( "\\{0\\}", ".*" ) + "$";
         assertTrue( "Check failure message", getFailure().getReason().matches( 
pattern ) );
 
@@ -930,24 +985,60 @@
     {
         return path.trim().replaceAll( "\r\n", "\n" ).replace( '\r', '\n' 
).replaceAll( "<\\?xml .+\\?>", "" );
     }
-
+    
     private void checkSuccess()
     {
-        assertEquals( "check no errors", 0, reportingDatabase.getNumFailures() 
);
-        assertEquals( "check no warnings", 0, 
reportingDatabase.getNumWarnings() );
-        assertEquals( "check no notices", 0, reportingDatabase.getNumNotices() 
);
+        checkCounts(0, 0, 0);
     }
 
     private void checkFailure()
     {
-        assertEquals( "check num errors", 1, 
reportingDatabase.getNumFailures() );
-        assertEquals( "check no warnings", 0, 
reportingDatabase.getNumWarnings() );
-        assertEquals( "check no notices", 0, reportingDatabase.getNumNotices() 
);
+        checkCounts(1, 0, 0);
+    }
+    
+    private void checkCounts( int failures, int warnings, int notices )
+    {
+        int actualFailures = reportingDatabase.getNumFailures();
+        int actualWarnings = reportingDatabase.getNumWarnings();
+        int actualNotices = reportingDatabase.getNumNotices();
+
+        if ( ( failures != actualFailures ) || ( warnings != actualWarnings ) 
|| ( notices != actualNotices ) )
+        {
+            fail( "Check Results Counts expected:<" + failures + "," + 
warnings + "," + notices + "> but was:<"
+                + actualFailures + "," + actualWarnings + "," + actualNotices 
+ ">" );
+        }
     }
 
     private String getI18nString( String key )
     {
         return i18n.getString( repositoryConverter.getClass().getName(), 
Locale.getDefault(), key );
+    }
+    
+    private void assertHasFailureReason( String reason )
+    {
+        ArtifactResults artifact = (ArtifactResults) 
reportingDatabase.getArtifactIterator().next();
+        
+        // Attempt to find the reason ...
+        for ( Iterator it = artifact.getFailures().iterator(); it.hasNext(); )
+        {
+            Result result = (Result) it.next();
+            if ( StringUtils.equals( result.getReason(), reason ) )
+            {
+                return;
+            }
+        }
+        
+        // Didn't find it! whoops ...
+        System.err.println( "ArtifactResults : " + artifact.getGroupId() + ":" 
+ artifact.getArtifactId() + ":"
+            + artifact.getVersion() + ":" + artifact.getType() + ":" + 
artifact.getClassifier() );
+        for ( Iterator it = artifact.getFailures().iterator(); it.hasNext(); )
+        {
+            Result result = (Result) it.next();
+            System.err.println( "   Failure: " + result.getProcessor() + ":" + 
result.getProblem() + ":"
+                + result.getReason() );
+        }
+        
+        fail( "Unable to find failure reason <" + reason + "> in artifact <" + 
artifact + ">" );
     }
 
     private Result getFailure()

Added: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java?view=auto&rev=507658
==============================================================================
--- 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
 (added)
+++ 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
 Wed Feb 14 11:13:36 2007
@@ -0,0 +1,44 @@
+package org.apache.maven.archiva.converter.transaction;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+/**
+ * AllTests 
+ *
+ * @author <a href="mailto:[EMAIL PROTECTED]">Joakim Erdfelt</a>
+ * @version $Id$
+ */
+public class AllTests
+{
+
+    public static Test suite()
+    {
+        TestSuite suite = new TestSuite( "Test for 
org.apache.maven.archiva.converter.transaction" );
+        //$JUnit-BEGIN$
+        suite.addTestSuite( CreateFileEventTest.class );
+        suite.addTestSuite( CopyFileEventTest.class );
+        //$JUnit-END$
+        return suite;
+    }
+
+}

Propchange: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Propchange: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/java/org/apache/maven/archiva/converter/transaction/AllTests.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/resources/org/apache/maven/archiva/converter/RepositoryConverterTest.xml
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/resources/org/apache/maven/archiva/converter/RepositoryConverterTest.xml?view=diff&rev=507658&r1=507657&r2=507658
==============================================================================
--- 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/resources/org/apache/maven/archiva/converter/RepositoryConverterTest.xml
 (original)
+++ 
maven/archiva/branches/archiva-MRM-239/archiva-converter/src/test/resources/org/apache/maven/archiva/converter/RepositoryConverterTest.xml
 Wed Feb 14 11:13:36 2007
@@ -16,10 +16,11 @@
   ~ KIND, either express or implied.  See the License for the
   ~ specific language governing permissions and limitations
   ~ under the License.
-  -->
+-->
 
 <component-set>
   <components>
+
     <component>
       <role>org.apache.maven.archiva.converter.RepositoryConverter</role>
       
<implementation>org.apache.maven.archiva.converter.DefaultRepositoryConverter</implementation>
@@ -37,8 +38,8 @@
           <field-name>artifactFactory</field-name>
         </requirement>
         <requirement>
-          <role>org.apache.maven.model.converter.ArtifactPomRewriter</role>
-          <field-name>rewriter</field-name>
+          
<role>org.apache.maven.archiva.reporting.database.ReportingDatabase</role>
+          <field-name>reportingDatabase</field-name>
         </requirement>
         <requirement>
           <role>org.codehaus.plexus.i18n.I18N</role>
@@ -63,14 +64,70 @@
           <field-name>artifactFactory</field-name>
         </requirement>
         <requirement>
-          <role>org.apache.maven.model.converter.ArtifactPomRewriter</role>
-          <field-name>rewriter</field-name>
+          
<role>org.apache.maven.archiva.reporting.database.ReportingDatabase</role>
+          <field-name>reportingDatabase</field-name>
         </requirement>
         <requirement>
           <role>org.codehaus.plexus.i18n.I18N</role>
           <field-name>i18n</field-name>
         </requirement>
       </requirements>
+    </component>
+
+
+    <component>
+      <role>org.codehaus.plexus.jdo.JdoFactory</role>
+      <role-hint>archiva</role-hint>
+      
<implementation>org.codehaus.plexus.jdo.DefaultConfigurableJdoFactory</implementation>
+      
+      <configuration>
+        <!-- Database Configuration -->
+        <driverName>org.hsqldb.jdbcDriver</driverName>
+        <url>jdbc:hsqldb:mem:TESTDB</url>
+        <userName>sa</userName>
+        <password></password>
+        
+        <!-- JPOX and JDO configuration -->
+        
<persistenceManagerFactoryClass>org.jpox.PersistenceManagerFactoryImpl</persistenceManagerFactoryClass>
+        <otherProperties>
+          <property>
+            <name>javax.jdo.PersistenceManagerFactoryClass</name>
+            <value>org.jpox.PersistenceManagerFactoryImpl</value>
+          </property>
+          <property>
+            <name>org.jpox.autoCreateSchema</name>
+            <value>true</value>
+          </property>
+          <property>
+            <name>org.jpox.validateTables</name>
+            <value>false</value>
+          </property>
+          <property>
+            <name>org.jpox.validateConstraints</name>
+            <value>false</value>
+          </property>
+          <property>
+            <name>org.jpox.validateColumns</name>
+            <value>false</value>
+          </property>
+          <property>
+            <name>org.jpox.autoStartMechanism</name>
+            <value>None</value>
+          </property>
+          <property>
+            <name>org.jpox.transactionIsolation</name>
+            <value>READ_UNCOMMITTED</value>
+          </property>
+          <property>
+            <name>org.jpox.poid.transactionIsolation</name>
+            <value>READ_UNCOMMITTED</value>
+          </property>
+          <property>
+            <name>org.jpox.rdbms.dateTimezone</name>
+            <value>JDK_DEFAULT_TIMEZONE</value>
+          </property>
+        </otherProperties>
+      </configuration>
     </component>
   </components>
 </component-set>


Reply via email to