You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2010/07/08 17:40:47 UTC

svn commit: r961815 - in /maven/core-integration-testing/trunk/core-it-suite/src/test: java/org/apache/maven/it/ resources/mng-0947/ resources/mng-0947/repo/org/apache/maven/its/mng0947/d/ resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/ res...

Author: bentmann
Date: Thu Jul  8 15:40:46 2010
New Revision: 961815

URL: http://svn.apache.org/viewvc?rev=961815&view=rev
Log:
o Strengthened test to check both direct and non-direct optional dependencies

Added:
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.jar   (with props)
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.pom
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.jar   (with props)
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.pom
Modified:
    maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng0947OptionalDependencyTest.java
    maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/pom.xml

Modified: maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng0947OptionalDependencyTest.java
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng0947OptionalDependencyTest.java?rev=961815&r1=961814&r2=961815&view=diff
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng0947OptionalDependencyTest.java (original)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng0947OptionalDependencyTest.java Thu Jul  8 15:40:46 2010
@@ -40,7 +40,8 @@ public class MavenITmng0947OptionalDepen
     }
 
     /**
-     * Verify that optional dependencies of a project's direct dependencies are excluded from the project class path.
+     * Verify that direct optional dependencies are included in the project class paths while transitive optional
+     * dependencies are excluded.
      */
     public void testit()
         throws Exception
@@ -59,15 +60,21 @@ public class MavenITmng0947OptionalDepen
         verifier.resetStreams();
 
         List compile = verifier.loadLines( "target/compile.txt", "UTF-8" );
-        assertEquals( 0, compile.size() );
+        assertTrue( compile.toString(), compile.contains( "org.apache.maven.its.mng0947:d:jar:0.1" ) );
+        assertTrue( compile.toString(), compile.contains( "org.apache.maven.its.mng0947:e:jar:0.1" ) );
+        assertEquals( 2, compile.size() );
 
         List runtime = verifier.loadLines( "target/runtime.txt", "UTF-8" );
         assertTrue( runtime.toString(), runtime.contains( "org.apache.maven.its.mng0947:c:jar:0.1" ) );
-        assertEquals( 1, runtime.size() );
+        assertTrue( runtime.toString(), runtime.contains( "org.apache.maven.its.mng0947:d:jar:0.1" ) );
+        assertTrue( runtime.toString(), runtime.contains( "org.apache.maven.its.mng0947:e:jar:0.1" ) );
+        assertEquals( 3, runtime.size() );
 
         List test = verifier.loadLines( "target/test.txt", "UTF-8" );
         assertTrue( test.toString(), test.contains( "org.apache.maven.its.mng0947:c:jar:0.1" ) );
-        assertEquals( 1, test.size() );
+        assertTrue( test.toString(), test.contains( "org.apache.maven.its.mng0947:d:jar:0.1" ) );
+        assertTrue( test.toString(), test.contains( "org.apache.maven.its.mng0947:e:jar:0.1" ) );
+        assertEquals( 3, test.size() );
     }
 
 }

Modified: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/pom.xml
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/pom.xml?rev=961815&r1=961814&r2=961815&view=diff
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/pom.xml (original)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/pom.xml Thu Jul  8 15:40:46 2010
@@ -28,7 +28,8 @@ under the License.
 
   <name>Maven Integration Test :: MNG-947</name> 
   <description>
-    Verify that optional dependencies of a project's direct dependencies are excluded from the project class path.
+    Verify that direct optional dependencies are included in the project class paths while transitive optional
+    dependencies are excluded.
   </description>
 
   <dependencies>
@@ -38,6 +39,13 @@ under the License.
       <version>0.1</version>
       <scope>runtime</scope>
     </dependency>
+    <dependency>
+      <groupId>org.apache.maven.its.mng0947</groupId>
+      <artifactId>e</artifactId>
+      <version>0.1</version>
+      <scope>compile</scope>
+      <optional>true</optional>
+    </dependency>
   </dependencies>
 
   <build>

Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.jar
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.jar?rev=961815&view=auto
==============================================================================
Binary file - no diff available.

Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.pom
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.pom?rev=961815&view=auto
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.pom (added)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/d/0.1/d-0.1.pom Thu Jul  8 15:40:46 2010
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.its.mng0947</groupId>
+  <artifactId>d</artifactId>
+  <version>0.1</version>
+  <packaging>jar</packaging>
+
+  <distributionManagement>
+    <repository>
+      <id>maven-core-it</id>
+      <url>file:///${basedir}/repo</url>
+    </repository>
+  </distributionManagement>
+</project>

Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.jar
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.jar?rev=961815&view=auto
==============================================================================
Binary file - no diff available.

Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.pom
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.pom?rev=961815&view=auto
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.pom (added)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-0947/repo/org/apache/maven/its/mng0947/e/0.1/e-0.1.pom Thu Jul  8 15:40:46 2010
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.maven.its.mng0947</groupId>
+  <artifactId>e</artifactId>
+  <version>0.1</version>
+  <packaging>jar</packaging>
+
+  <distributionManagement>
+    <repository>
+      <id>maven-core-it</id>
+      <url>file:///${basedir}/repo</url>
+    </repository>
+  </distributionManagement>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven.its.mng0947</groupId>
+      <artifactId>d</artifactId>
+      <version>0.1</version>
+      <scope>compile</scope>
+    </dependency>
+  </dependencies>
+</project>