[ 
https://jira.codehaus.org/browse/MNG-1378?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=349694#comment-349694
 ] 

Peter Ansell commented on MNG-1378:
-----------------------------------

One alternative if you need to depend on a testsuite that is published by a 
different module to ensure that the testsuite is published as a "jar", not a 
"test-jar", and it is pulled into "test" scope in the local module, with all of 
its dependencies. I have used this "testsuite-module" + "testrunner-module" 
pattern successfully in the past to publish both concrete and abstract 
testclasses, although generally only for compliance tests where a specific 
interface or protocol is being tested based on a well known specification.

> Make dependencies of test-jars transitive
> -----------------------------------------
>
>                 Key: MNG-1378
>                 URL: https://jira.codehaus.org/browse/MNG-1378
>             Project: Maven
>          Issue Type: Bug
>          Components: Dependencies
>    Affects Versions: 2.0
>            Reporter: Mark Hobson
>             Fix For: Issues to be reviewed for 3.x
>
>         Attachments: mng1378.tar.gz
>
>
> test-jar transitive dependencies are calculated as per compile scope rather 
> than test scope.
> The situation is demonstrated nicely in it0077:
> * module sub1 has a test-scoped dependency of commons-lang
> * module sub2 has a test-scoped dependency of sub1 test-jar
> sub2 tests should inherit the commons-lang transitive dependency.  For 
> example:
> Index: 
> maven-core-it/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java
> ===================================================================
> --- 
> maven-core-it/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java
>   (revision
> 328307)
> +++ 
> maven-core-it/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java
>   (working
> copy)
> @@ -1,6 +1,7 @@
>  package org.apache.maven.it0077;
>  import junit.framework.TestCase;
> +import org.apache.commons.lang.BooleanUtils;
>  public class PersonTwoTest
>     extends PersonTest
> Results in:
> [INFO] 
> ----------------------------------------------------------------------------
> [ERROR] BUILD FAILURE
> [INFO] 
> ----------------------------------------------------------------------------
> [INFO] Compilation failure
> c:\maven-components\maven-core-it\it0077\sub2\src\test\java\org\apache\maven\it0077\PersonTwoTest.java:[4,31]
> package org.apache.commons.lang does not exist



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)

Reply via email to