Author: oching
Date: Thu Mar 19 06:14:43 2009
New Revision: 755846
URL: http://svn.apache.org/viewvc?rev=755846&view=rev
Log:
[MRM-731]
submitted by Jan Ancajas
o fix project properties being left out during cloning of the archivaProject
(with unit test)
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java?rev=755846&r1=755845&r2=755846&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
(original)
+++
archiva/trunk/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
Thu Mar 19 06:14:43 2009
@@ -65,6 +65,7 @@
cloned.setPlugins( clonePlugins( model.getPlugins() ) );
cloned.setReports( cloneReports( model.getReports() ) );
cloned.setDependencyManagement( cloneDependencies(
model.getDependencyManagement() ) );
+ cloned.setProperties( clone(model.getProperties() ) );
return cloned;
}
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java?rev=755846&r1=755845&r2=755846&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
(original)
+++
archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
Thu Mar 19 06:14:43 2009
@@ -158,6 +158,67 @@
effectiveModel.getVersion() );
}
}
+
+ /*
+ * Test before and after the properties are evaluated. pom snippet:
<maven.version>2.0.5</maven.version>
+ * <wagon.version>1.0-beta-2</wagon.version>
<plexus-security.version>1.0-alpha-10-SNAPSHOT</plexus-security.version>
+ */
+ public void testEffectiveProjectProperty()
+ throws Exception
+ {
+ initTestResolverFactory();
+ EffectiveProjectModelFilter filter = lookupEffective();
+
+ String pomFile =
"/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT.pom";
+ ArchivaProjectModel startModel = createArchivaProjectModel(
DEFAULT_REPOSITORY + pomFile );
+
+ String plexusSecurityVersion = "1.0-alpha-10-SNAPSHOT";
+ String wagonVersion = "1.0-beta-2";
+
+ boolean passedPlexusVersionChecking = false;
+ boolean passedWagonVersionChecking = false;
+
+ List<Dependency> startDeps = startModel.getDependencyManagement();
+ for ( Dependency startDep : startDeps )
+ {
+ if ( "org.codehaus.plexus.security".equals( startDep.getGroupId()
) )
+ {
+ assertEquals( startDep.getVersion(),
"${plexus-security.version}" );
+ }
+ else if ( "org.apache.maven.wagon".equals( startDep.getGroupId() )
)
+ {
+ assertEquals( startDep.getVersion(), "${wagon.version}" );
+ }
+ }
+
+ ArchivaProjectModel effectiveModel = filter.filter( startModel );
+
+ List<Dependency> effectiveDeps =
effectiveModel.getDependencyManagement();
+ for ( Dependency dependency : effectiveDeps )
+ {
+ if ( "org.codehaus.plexus.security".equals(
dependency.getGroupId() ) )
+ {
+ assertEquals( dependency.getVersion(), plexusSecurityVersion );
+
+ if ( !passedPlexusVersionChecking )
+ {
+ passedPlexusVersionChecking = true;
+ }
+ }
+ else if ( "org.apache.maven.wagon".equals( dependency.getGroupId()
) )
+ {
+ assertEquals( dependency.getVersion(), wagonVersion );
+
+ if ( !passedWagonVersionChecking )
+ {
+ passedWagonVersionChecking = true;
+ }
+ }
+
+ }
+ assertTrue( passedPlexusVersionChecking );
+ assertTrue( passedWagonVersionChecking );
+ }
private ProjectModelResolverFactory initTestResolverFactory()
throws Exception