You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by jd...@apache.org on 2005/09/26 23:27:06 UTC

svn commit: r291751 - in /maven/components/trunk/maven-project/src/test: java/org/apache/maven/project/canonical/ java/org/apache/maven/project/injection/ resources/org/apache/maven/project/ resources/org/apache/maven/project/canonical/

Author: jdcasey
Date: Mon Sep 26 14:27:00 2005
New Revision: 291751

URL: http://svn.apache.org/viewcvs?rev=291751&view=rev
Log:
Resolving: MNG-1022...Adding TestProfileInjector to avoid injecting profiles for tests, and still guard against NPEs when profiles exist.

Added:
    maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java   (with props)
    maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/
    maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml   (with props)
Modified:
    maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.java
    maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml

Modified: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.java?rev=291751&r1=291750&r2=291751&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.java (original)
+++ maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.java Mon Sep 26 14:27:00 2005
@@ -23,6 +23,7 @@
 import org.codehaus.plexus.util.xml.Xpp3Dom;
 
 import java.io.File;
+import java.util.Iterator;
 import java.util.List;
 
 /**
@@ -53,12 +54,22 @@
 
         // Plugin0 [plexus]
 
-        Plugin plugin = (Plugin) plugins.get( 0 );
-
-        assertEquals( "org.apache.maven.plugins", plugin.getGroupId() );
-
-        assertEquals( "maven-plexus-plugin", plugin.getArtifactId() );
-
+        String key = "org.apache.maven.plugins:maven-plexus-plugin";
+        
+        Plugin plugin = null;
+        for ( Iterator it = plugins.iterator(); it.hasNext(); )
+        {
+            Plugin check = (Plugin) it.next();
+            
+            if ( key.equals( check.getKey() ) )
+            {
+                plugin = check;
+                break;
+            }
+        }
+        
+        assertNotNull( plugin );
+        
         assertEquals( "1.0", plugin.getVersion() );
 
         Xpp3Dom configuration = (Xpp3Dom) plugin.getConfiguration();

Added: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java?rev=291751&view=auto
==============================================================================
--- maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java (added)
+++ maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java Mon Sep 26 14:27:00 2005
@@ -0,0 +1,15 @@
+package org.apache.maven.project.injection;
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Profile;
+
+public class TestProfileInjector
+    implements ProfileInjector
+{
+
+    public void inject( Profile profile, Model model )
+    {
+        // do nothing.
+    }
+
+}

Propchange: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/injection/TestProfileInjector.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Modified: maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml?rev=291751&r1=291750&r2=291751&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml (original)
+++ maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml Mon Sep 26 14:27:00 2005
@@ -15,6 +15,11 @@
     </component>
     -->
     <component>
+      <role>org.apache.maven.project.injection.ProfileInjector</role>
+      <role-hint>test</role-hint>
+      <implementation>org.apache.maven.project.injection.TestProfileInjector</implementation>
+    </component>
+    <component>
       <role>org.apache.maven.project.TestArtifactResolver</role>
       <implementation>org.apache.maven.project.TestArtifactResolver</implementation>
       <requirements>
@@ -42,6 +47,10 @@
         </requirement>
         <requirement>
           <role>org.apache.maven.project.injection.ModelDefaultsInjector</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.injection.ProfileInjector</role>
+          <role-hint>test</role-hint>
         </requirement>
         <requirement>
           <role>org.apache.maven.project.interpolation.ModelInterpolator</role>

Added: maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml?rev=291751&view=auto
==============================================================================
--- maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml (added)
+++ maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml Mon Sep 26 14:27:00 2005
@@ -0,0 +1,79 @@
+<plexus>
+  <components>
+    <!-- Due to PLX-108, have to work around it...
+    <component>
+      <role>org.apache.maven.artifact.ArtifactResolver</role>
+      <implementation>org.apache.maven.project.TestArtifactResolvertion>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.artifact.manager.WagonManager</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
+        </requirement>
+      </requirements>
+    </component>
+    -->
+    <component>
+      <role>org.apache.maven.project.injection.ProfileInjector</role>
+      <role-hint>test</role-hint>
+      <implementation>org.apache.maven.project.injection.TestProfileInjector</implementation>
+    </component>
+    <component>
+      <role>org.apache.maven.project.TestArtifactResolver</role>
+      <implementation>org.apache.maven.project.TestArtifactResolver</implementation>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.artifact.manager.WagonManager</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.repository.ArtifactRepositoryFactory</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.resolver.ArtifactCollector</role>
+        </requirement>
+      </requirements>
+    </component>
+    <component>
+      <role>org.apache.maven.project.MavenProjectBuilder</role>
+      <role-hint>test</role-hint>
+      <implementation>org.apache.maven.project.TestProjectBuilder</implementation>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.profiles.MavenProfilesBuilder</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.injection.ModelDefaultsInjector</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.injection.ProfileInjector</role>
+          <role-hint>test</role-hint>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.interpolation.ModelInterpolator</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.inheritance.ModelInheritanceAssembler</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.validation.ModelValidator</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.project.path.PathTranslator</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.resolver.ArtifactResolver</role>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.repository.ArtifactRepositoryFactory</role>
+        </requirement>
+      </requirements>
+    </component>
+  </components>
+</plexus>
\ No newline at end of file

Propchange: maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/trunk/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org