Author: olamy
Date: Wed Dec  7 22:53:46 2011
New Revision: 1211691

URL: http://svn.apache.org/viewvc?rev=1211691&view=rev
Log:
enhance it test with testing Contextualizable call on the injected component

Added:
    
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/
    
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java
      - copied, changed from r1211689, 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java
    
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java
   (with props)
    
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java
   (contents, props changed)
      - copied, changed from r1211689, 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java
Removed:
    
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java
Modified:
    
maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5206PlexusLifecycleHonoured.java
    
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/pom.xml

Modified: 
maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5206PlexusLifecycleHonoured.java
URL: 
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5206PlexusLifecycleHonoured.java?rev=1211691&r1=1211690&r2=1211691&view=diff
==============================================================================
--- 
maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5206PlexusLifecycleHonoured.java
 (original)
+++ 
maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5206PlexusLifecycleHonoured.java
 Wed Dec  7 22:53:46 2011
@@ -54,8 +54,11 @@ public class MavenITmng5206PlexusLifecyc
         verifier.verifyErrorFreeLog();
         verifier.resetStreams();
 
-        verifier.verifyTextInLog( "MojoWithPlexusLifecycle :: dispose" );
         verifier.verifyTextInLog( "MojoWithPlexusLifecycle :: contextualize" );
+        verifier.verifyTextInLog( "DefaultFakeComponent :: contextualize" );
+        verifier.verifyTextInLog( "MojoWithPlexusLifecycle :: dispose" );
+        // olamy dispose on injected component is not called
+        //verifier.verifyTextInLog( "DefaultFakeComponent :: dispose" );
     }
 
 }

Modified: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/pom.xml
URL: 
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/pom.xml?rev=1211691&r1=1211690&r2=1211691&view=diff
==============================================================================
--- 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/pom.xml
 (original)
+++ 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/pom.xml
 Wed Dec  7 22:53:46 2011
@@ -47,4 +47,23 @@ under the License.
       <version>1.0-alpha-9-stable-1</version>
     </dependency>
   </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.plexus</groupId>
+        <artifactId>plexus-maven-plugin</artifactId>
+        <version>1.3.8</version>
+        <executions>
+          <execution>
+            <id>create-component-descriptor</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>descriptor</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
 </project>

Copied: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java
 (from r1211689, 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java)
URL: 
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java?p2=maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java&p1=maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java&r1=1211689&r2=1211691&rev=1211691&view=diff
==============================================================================
--- 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java
 (original)
+++ 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java
 Wed Dec  7 22:53:46 2011
@@ -1,4 +1,4 @@
-package org.apache.maven.its.plugins;
+package org.apache.maven.its.plugins.plexuslifecycle;
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -18,42 +18,40 @@ package org.apache.maven.its.plugins;
  * under the License.
  */
 
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.MojoFailureException;
-import org.codehaus.plexus.configuration.PlexusConfiguration;
-import org.codehaus.plexus.configuration.PlexusConfigurationException;
 import org.codehaus.plexus.context.Context;
 import org.codehaus.plexus.context.ContextException;
-import org.codehaus.plexus.personality.plexus.lifecycle.phase.Configurable;
+import org.codehaus.plexus.logging.LogEnabled;
+import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Disposable;
 
 /**
  * @author Olivier Lamy
- * @goal do-nothing
- * @phase validate
+ * @plexus.component 
role="org.apache.maven.its.plugins.plexuslifecycle.FakeComponent" 
role-hint="default"
  */
-public class MojoWithPlexusLifecycle
-    extends AbstractMojo
-    implements Contextualizable, Disposable
+public class DefaultFakeComponent
+    implements FakeComponent, Contextualizable, Disposable, LogEnabled
 {
-    public void execute()
-        throws MojoExecutionException, MojoFailureException
-    {
-        getLog().info( "execute MojoWithPlexusLifecycle" );
-    }
+    Logger logger;
 
-    public void dispose()
+    public void enableLogging( Logger logger )
     {
-        getLog().info( "MojoWithPlexusLifecycle :: dispose" );
+        this.logger = logger;
     }
 
     public void contextualize( Context context )
         throws ContextException
     {
-        getLog().info( "MojoWithPlexusLifecycle :: contextualize" );
+        logger.info( "DefaultFakeComponent :: contextualize" );
     }
 
+    public void dispose()
+    {
+        logger.info( "DefaultFakeComponent :: dispose" );
+    }
 
+    public void doNothing()
+    {
+        logger.info( "doNothing DefaultFakeComponent" );
+    }
 }

Added: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java
URL: 
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java?rev=1211691&view=auto
==============================================================================
--- 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java
 (added)
+++ 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java
 Wed Dec  7 22:53:46 2011
@@ -0,0 +1,27 @@
+package org.apache.maven.its.plugins.plexuslifecycle;
+/*
+ * 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.
+ */
+
+/**
+ * @author Olivier Lamy
+ */
+public interface FakeComponent
+{
+    void doNothing();
+}

Propchange: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/FakeComponent.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Copied: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java
 (from r1211689, 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java)
URL: 
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java?p2=maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java&p1=maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java&r1=1211689&r2=1211691&rev=1211691&view=diff
==============================================================================
--- 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/MojoWithPlexusLifecycle.java
 (original)
+++ 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java
 Wed Dec  7 22:53:46 2011
@@ -1,4 +1,4 @@
-package org.apache.maven.its.plugins;
+package org.apache.maven.its.plugins.plexuslifecycle;
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -21,11 +21,8 @@ package org.apache.maven.its.plugins;
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
-import org.codehaus.plexus.configuration.PlexusConfiguration;
-import org.codehaus.plexus.configuration.PlexusConfigurationException;
 import org.codehaus.plexus.context.Context;
 import org.codehaus.plexus.context.ContextException;
-import org.codehaus.plexus.personality.plexus.lifecycle.phase.Configurable;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Disposable;
 
@@ -38,10 +35,18 @@ public class MojoWithPlexusLifecycle
     extends AbstractMojo
     implements Contextualizable, Disposable
 {
+    /**
+     * @component
+     * @throws MojoExecutionException
+     * @throws MojoFailureException
+     */
+    private FakeComponent fakeComponent;
+
     public void execute()
         throws MojoExecutionException, MojoFailureException
     {
         getLog().info( "execute MojoWithPlexusLifecycle" );
+        fakeComponent.doNothing();
     }
 
     public void dispose()

Propchange: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/core-integration-testing/trunk/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/MojoWithPlexusLifecycle.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision


Reply via email to