Author: jdcasey Date: Fri Jul 18 08:41:39 2008 New Revision: 677943 URL: http://svn.apache.org/viewvc?rev=677943&view=rev Log: [MNG-3671] integration test for plugin-level dependencies that have expressions in their definition.
Added: maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3671PluginLevelDepInterpolationTest.java maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/pom.xml maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/testing/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/testing/App.java maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/testing/ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/testing/AppTest.java Added: maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3671PluginLevelDepInterpolationTest.java URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3671PluginLevelDepInterpolationTest.java?rev=677943&view=auto ============================================================================== --- maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3671PluginLevelDepInterpolationTest.java (added) +++ maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3671PluginLevelDepInterpolationTest.java Fri Jul 18 08:41:39 2008 @@ -0,0 +1,79 @@ +/* + * 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. + */ + +package org.apache.maven.integrationtests; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException; +import org.apache.maven.integrationtests.AbstractMavenIntegrationTestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +/** + * This is a test set for <a href="http://jira.codehaus.org/browse/MNG-3671">MNG-3671</a>. + * + * Tests to make sure that custom plugin dependencies (defined in your local POM) have + * their information interpolated before they are injected into the plugin descriptor + * for eventual resolution and inclusion in the plugin classpath. Otherwise, resolution + * errors will occur and the plugin will fail to initialize. + * + * @author jdcasey + * + */ +public class MavenITmng3671PluginLevelDepInterpolationTest + extends AbstractMavenIntegrationTestCase +{ + public MavenITmng3671PluginLevelDepInterpolationTest() + throws InvalidVersionSpecificationException + { + super( "(2.0.8,)" ); // only test in 2.0.9+ + } + + public void testitMNG3671 () + throws Exception + { + // The testdir is computed from the location of this + // file. + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3671-pluginLevelDepInterpolation" ); + + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + + verifier.executeGoal( "compile" ); + + /* + * This is the simplest way to check a build + * succeeded. It is also the simplest way to create + * an IT test: make the build pass when the test + * should pass, and make the build fail when the + * test should fail. There are other methods + * supported by the verifier. They can be seen here: + * http://maven.apache.org/shared/maven-verifier/apidocs/index.html + */ + verifier.verifyErrorFreeLog(); + + /* + * Reset the streams before executing the verifier + * again. + */ + verifier.resetStreams(); + } +} Added: maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/pom.xml URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/pom.xml?rev=677943&view=auto ============================================================================== --- maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/pom.xml (added) +++ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/pom.xml Fri Jul 18 08:41:39 2008 @@ -0,0 +1,33 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>testing</groupId> + <artifactId>plugin-level-dep-with-expression</artifactId> + <packaging>jar</packaging> + <version>3.8.1</version> + + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <version>2.0.2</version> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>${pom.version}</version> + </dependency> + </dependencies> + </plugin> + </plugins> + </build> +</project> Added: maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/testing/App.java URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/testing/App.java?rev=677943&view=auto ============================================================================== --- maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/testing/App.java (added) +++ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/main/java/testing/App.java Fri Jul 18 08:41:39 2008 @@ -0,0 +1,13 @@ +package testing; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} Added: maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/testing/AppTest.java URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/testing/AppTest.java?rev=677943&view=auto ============================================================================== --- maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/testing/AppTest.java (added) +++ maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3671-pluginLevelDepInterpolation/src/test/java/testing/AppTest.java Fri Jul 18 08:41:39 2008 @@ -0,0 +1,38 @@ +package testing; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +}