Author: jdcasey
Date: Thu Jan 31 18:14:09 2008
New Revision: 617331
URL: http://svn.apache.org/viewvc?rev=617331&view=rev
Log:
[MNG-2145] Adding more unit tests from trunk revId: 617330
Added:
maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml
(with props)
Modified:
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/DefaultMavenProjectBuilderTest.java
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/ModelUtilsTest.java
Modified:
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/DefaultMavenProjectBuilderTest.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/DefaultMavenProjectBuilderTest.java?rev=617331&r1=617330&r2=617331&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/DefaultMavenProjectBuilderTest.java
(original)
+++
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/DefaultMavenProjectBuilderTest.java
Thu Jan 31 18:14:09 2008
@@ -28,6 +28,7 @@
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.model.Plugin;
import org.apache.maven.model.Profile;
import org.apache.maven.model.Repository;
import org.apache.maven.profiles.DefaultProfileManager;
@@ -161,6 +162,17 @@
getProject( f2 );
}
+ public void testDuplicatePluginDefinitionsMerged()
+ throws Exception
+ {
+ File f1 = getTestFile(
"src/test/resources/projects/duplicate-plugins-merged-pom.xml" );
+
+ MavenProject project = getProject( f1 );
+
+ assertEquals( 2, ( (Plugin) project.getBuildPlugins().get( 0 )
).getDependencies().size() );
+ }
+
+
protected ArtifactRepository getLocalRepository()
throws Exception
{
Modified:
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/ModelUtilsTest.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/ModelUtilsTest.java?rev=617331&r1=617330&r2=617331&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/ModelUtilsTest.java
(original)
+++
maven/components/branches/maven-2.0.x/maven-project/src/test/java/org/apache/maven/project/ModelUtilsTest.java
Thu Jan 31 18:14:09 2008
@@ -37,6 +37,33 @@
extends TestCase
{
+ public void testShouldUseMainPluginDependencyVersionOverManagedDepVersion()
+ {
+ Plugin mgtPlugin = createPlugin( "group", "artifact", "1",
Collections.EMPTY_MAP );
+ Dependency mgtDep = createDependency( "g", "a", "2" );
+ mgtPlugin.addDependency( mgtDep );
+
+ Plugin plugin = createPlugin( "group", "artifact", "1",
Collections.EMPTY_MAP );
+ Dependency dep = createDependency( "g", "a", "1" );
+ plugin.addDependency( dep );
+
+ ModelUtils.mergePluginDefinitions( plugin, mgtPlugin, false );
+
+ assertEquals( dep.getVersion(), ((Dependency)
plugin.getDependencies().get( 0 ) ).getVersion() );
+ }
+
+ private Dependency createDependency( String gid,
+ String aid,
+ String ver )
+ {
+ Dependency dep = new Dependency();
+ dep.setGroupId( gid );
+ dep.setArtifactId( aid );
+ dep.setVersion( ver );
+
+ return dep;
+ }
+
public void testShouldNotInheritPluginWithInheritanceSetToFalse()
{
PluginContainer parent = new PluginContainer();
@@ -402,5 +429,30 @@
assertEquals( 1, child.getDependencies().size() );
Dependency dep2 = (Dependency) child.getDependencies().get( 0 );
assertEquals( dep.getManagementKey(), dep2.getManagementKey() );
+ }
+
+ public void testShouldMergeTwoPluginDependenciesOnMergeDupePluginDefs()
+ {
+ PluginContainer first = new PluginContainer();
+ Plugin fPlugin = createPlugin( "g", "a", "1", Collections.EMPTY_MAP );
+ Dependency fDep = new Dependency();
+ fDep.setGroupId( "group" );
+ fDep.setArtifactId( "artifact" );
+ fDep.setVersion( "1" );
+
+ first.addPlugin( fPlugin );
+ fPlugin.addDependency( fDep );
+
+ Plugin sPlugin = createPlugin( "g", "a", "1", Collections.EMPTY_MAP );
+ Dependency sDep = new Dependency();
+ sDep.setGroupId( "group" );
+ sDep.setArtifactId( "artifact2" );
+ sDep.setVersion( "1" );
+ first.addPlugin( sPlugin );
+ sPlugin.addDependency( sDep );
+
+ ModelUtils.mergeDuplicatePluginDefinitions( first );
+
+ assertEquals( 2, ((Plugin)first.getPlugins().get( 0 )
).getDependencies().size() );
}
}
Added:
maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml?rev=617331&view=auto
==============================================================================
---
maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml
(added)
+++
maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml
Thu Jan 31 18:14:09 2008
@@ -0,0 +1,32 @@
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>tests.project</groupId>
+ <artifactId>duplicate-plugin-defs-merged</artifactId>
+ <version>1</version>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>group</groupId>
+ <artifactId>first</artifactId>
+ <version>1</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>group</groupId>
+ <artifactId>second</artifactId>
+ <version>1</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
Propchange:
maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/components/branches/maven-2.0.x/maven-project/src/test/resources/projects/duplicate-plugins-merged-pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"