aboutsummaryrefslogtreecommitdiffstats
path: root/archiva-modules
diff options
context:
space:
mode:
authorMaria Odea B. Ching <oching@apache.org>2009-03-19 06:14:43 +0000
committerMaria Odea B. Ching <oching@apache.org>2009-03-19 06:14:43 +0000
commitee7a83da1deefb4dd406d7becc87cd00244b6dd4 (patch)
tree20f1e5d9d11b7d09cbb084d54caea3de36a98236 /archiva-modules
parent584031f68fde34243805457b4e2b63570ba3df7e (diff)
downloadarchiva-ee7a83da1deefb4dd406d7becc87cd00244b6dd4.tar.gz
archiva-ee7a83da1deefb4dd406d7becc87cd00244b6dd4.zip
[MRM-731]
submitted by Jan Ancajas o fix project properties being left out during cloning of the archivaProject (with unit test) git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@755846 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-modules')
-rw-r--r--archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java1
-rw-r--r--archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java61
2 files changed, 62 insertions, 0 deletions
diff --git a/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java b/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
index b77840150..a4bfed13b 100644
--- a/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
+++ b/archiva-modules/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/ArchivaModelCloner.java
@@ -65,6 +65,7 @@ public class ArchivaModelCloner
cloned.setPlugins( clonePlugins( model.getPlugins() ) );
cloned.setReports( cloneReports( model.getReports() ) );
cloned.setDependencyManagement( cloneDependencies( model.getDependencyManagement() ) );
+ cloned.setProperties( clone(model.getProperties() ) );
return cloned;
}
diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java b/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
index aa4ec3513..fae996e6f 100644
--- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
+++ b/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
@@ -158,6 +158,67 @@ public class EffectiveProjectModelFilterTest
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