You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by br...@apache.org on 2005/03/08 07:01:43 UTC

cvs commit: maven-components/maven-core/src/test/java/org/apache/maven/project ProjectClasspathTest.java

brett       2005/03/07 22:01:43

  Modified:    maven-core/src/main/java/org/apache/maven/artifact
                        MavenMetadataSource.java
               maven-core/src/test/java/org/apache/maven/project
                        ProjectClasspathTest.java
  Log:
  transitive test dependencies should be ignored
  
  Revision  Changes    Path
  1.14      +22 -26    maven-components/maven-core/src/main/java/org/apache/maven/artifact/MavenMetadataSource.java
  
  Index: MavenMetadataSource.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/artifact/MavenMetadataSource.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- MavenMetadataSource.java	8 Mar 2005 05:34:51 -0000	1.13
  +++ MavenMetadataSource.java	8 Mar 2005 06:01:43 -0000	1.14
  @@ -38,13 +38,14 @@
    * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
    * @version $Id$
    */
  -public class MavenMetadataSource
  -    implements ArtifactMetadataSource
  +public class MavenMetadataSource implements ArtifactMetadataSource
   {
       private MavenProjectBuilder mavenProjectBuilder;
       private ArtifactResolver artifactResolver;
   
  -    /** @todo remove. */
  +    /**
  +     * @todo remove.
  +     */
       private MavenXpp3Reader reader = new MavenXpp3Reader();
   
       public MavenMetadataSource( ArtifactResolver artifactResolver )
  @@ -65,10 +66,8 @@
           throws ArtifactMetadataRetrievalException
       {
           Set artifacts;
  -        Artifact metadataArtifact = new DefaultArtifact( artifact.getGroupId(),
  -                                                         artifact.getArtifactId(),
  -                                                         artifact.getVersion(),
  -                                                         "pom" );
  +        Artifact metadataArtifact = new DefaultArtifact( artifact.getGroupId(), artifact.getArtifactId(),
  +                                                         artifact.getVersion(), "pom" );
           try
           {
               artifactResolver.resolve( metadataArtifact, remoteRepositories, localRepository );
  @@ -106,33 +105,30 @@
           {
               Dependency d = (Dependency) i.next();
               Artifact artifact = createArtifact( d, scope, localRepository );
  -            projectArtifacts.add( artifact );
  +            if ( artifact != null )
  +            {
  +                projectArtifacts.add( artifact );
  +            }
           }
           return projectArtifacts;
       }
   
       protected Artifact createArtifact( Dependency dependency, String scope, ArtifactRepository localRepository )
       {
  -        // TODO: duplicated with the ArtifactFactory, localRepository not used (should be used here to resolve path?
  -        Artifact artifact = new DefaultArtifact( dependency.getGroupId(),
  -                                                 dependency.getArtifactId(),
  -                                                 dependency.getVersion(),
  -                                                 transitiveScope( dependency.getScope(), scope ),
  -                                                 dependency.getType(),
  -                                                 dependency.getType() );
  -        return artifact;
  -    }
  -
  -    private String transitiveScope( String desiredScope, String artifactScope )
  -    {
  -        // TODO: scope handler
  -        if ( Artifact.SCOPE_TEST.equals( artifactScope ) || Artifact.SCOPE_TEST.equals( desiredScope ) )
  +        // TODO: can refactor
  +        if ( Artifact.SCOPE_TEST.equals( scope ) )
           {
  -            return Artifact.SCOPE_TEST;
  +            return null;
           }
  -        else
  +
  +        // TODO: duplicated with the ArtifactFactory, localRepository not used (should be used here to resolve path?
  +        // TODO: scope handler
  +        String desiredScope = Artifact.SCOPE_RUNTIME;
  +        if ( Artifact.SCOPE_TEST.equals( dependency.getScope() ) )
           {
  -            return Artifact.SCOPE_RUNTIME;
  +            desiredScope = Artifact.SCOPE_TEST;
           }
  +        return new DefaultArtifact( dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(),
  +                                    desiredScope, dependency.getType(), dependency.getType() );
       }
   }
  
  
  
  1.2       +9 -3      maven-components/maven-core/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
  
  Index: ProjectClasspathTest.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/test/java/org/apache/maven/project/ProjectClasspathTest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ProjectClasspathTest.java	8 Mar 2005 05:34:52 -0000	1.1
  +++ ProjectClasspathTest.java	8 Mar 2005 06:01:43 -0000	1.2
  @@ -57,8 +57,15 @@
           checkArtifactIdScope( project, "runtime", "runtime" );
           checkArtifactIdScope( project, "default", "compile" );
   
  -        // check all transitive deps of a test dependency are test scope
  -        checkGroupIdScope( project, "test", "test" );
  +        // check all transitive deps of a test dependency are skipped
  +        artifact = getArtifact( project, "maven-test-test", "scope-compile" );
  +        assertNull( "Check no test dependencies are transitive", artifact );
  +        artifact = getArtifact( project, "maven-test-test", "scope-test" );
  +        assertNull( "Check no test dependencies are transitive", artifact );
  +        artifact = getArtifact( project, "maven-test-test", "scope-default" );
  +        assertNull( "Check no test dependencies are transitive", artifact );
  +        artifact = getArtifact( project, "maven-test-test", "scope-runtime" );
  +        assertNull( "Check no test dependencies are transitive", artifact );
   
           // check all transitive deps of a runtime dependency are runtime scope, except for test
           checkGroupIdScope( project, "runtime", "runtime" );
  @@ -101,7 +108,6 @@
                   return a;
               }
           }
  -        fail( "Dependency " + artifactId + " not found" );
           return null;
       }
   }