diff --git a/maven-plugin-testing-harness/pom.xml b/maven-plugin-testing-harness/pom.xml index 44987b9..db78ea9 100644 --- a/maven-plugin-testing-harness/pom.xml +++ b/maven-plugin-testing-harness/pom.xml @@ -44,7 +44,7 @@ under the License. org.apache.maven maven-compat ${mavenVersion} - provided + test org.apache.maven diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java index c38e852..b75b492 100644 --- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java +++ b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java @@ -38,6 +38,7 @@ import org.apache.commons.io.input.XmlStreamReader; import org.apache.maven.artifact.Artifact; +import org.apache.maven.artifact.factory.ArtifactFactory; import org.apache.maven.artifact.versioning.DefaultArtifactVersion; import org.apache.maven.execution.DefaultMavenExecutionRequest; import org.apache.maven.execution.DefaultMavenExecutionResult; @@ -56,7 +57,6 @@ import org.apache.maven.plugin.descriptor.PluginDescriptorBuilder; import org.apache.maven.plugin.logging.Log; import org.apache.maven.project.MavenProject; -import org.apache.maven.repository.RepositorySystem; import org.apache.maven.repository.internal.MavenRepositorySystemUtils; import org.codehaus.plexus.ContainerConfiguration; import org.codehaus.plexus.DefaultContainerConfiguration; @@ -154,9 +154,8 @@ protected void setUp() { PluginDescriptor pluginDescriptor = new PluginDescriptorBuilder().build( interpolationReader ); - - Artifact artifact = - lookup( RepositorySystem.class ).createArtifact( pluginDescriptor.getGroupId(), + + Artifact artifact = lookup( ArtifactFactory.class ).createBuildArtifact( pluginDescriptor.getGroupId(), pluginDescriptor.getArtifactId(), pluginDescriptor.getVersion(), ".jar" ); diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java index 36af4aa..92172f9 100644 --- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java +++ b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java @@ -21,10 +21,11 @@ import java.io.File; +import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy; +import org.apache.maven.artifact.repository.MavenArtifactRepository; import org.codehaus.plexus.PlexusTestCase; import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException; import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluator; -import org.apache.maven.artifact.repository.DefaultArtifactRepository; import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout; /** @@ -101,9 +102,11 @@ else if ( expression.startsWith( "basedir" ) || expression.startsWith( "project. } else if ( "localRepository".equals( expression ) ) { - File localRepo = new File( PlexusTestCase.getBasedir(), "target/local-repo" ); - return new DefaultArtifactRepository( "localRepository", "file://" + localRepo.getAbsolutePath(), - new DefaultRepositoryLayout() ); + return new MavenArtifactRepository( "localRepository", + "file://" + new File( PlexusTestCase.getBasedir(), "target/local-repo" ).getAbsolutePath(), + new DefaultRepositoryLayout(), + new ArtifactRepositoryPolicy( true, "release", "always" ), + new ArtifactRepositoryPolicy( true, "snapshot", "never" ) ); } else { diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactCollector.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactCollector.java deleted file mode 100644 index c8e7cbe..0000000 --- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactCollector.java +++ /dev/null @@ -1,93 +0,0 @@ -package org.apache.maven.plugin.testing.stubs; - -/* - * 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. - */ - -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.apache.maven.artifact.Artifact; -import org.apache.maven.artifact.metadata.ArtifactMetadataSource; -import org.apache.maven.artifact.repository.ArtifactRepository; -import org.apache.maven.artifact.resolver.ArtifactCollector; -import org.apache.maven.artifact.resolver.ArtifactResolutionException; -import org.apache.maven.artifact.resolver.ArtifactResolutionRequest; -import org.apache.maven.artifact.resolver.ArtifactResolutionResult; -import org.apache.maven.artifact.resolver.ResolutionListener; -import org.apache.maven.artifact.resolver.filter.ArtifactFilter; -import org.apache.maven.repository.legacy.resolver.conflict.ConflictResolver; - -/** - * @author Brian Fox - */ -public class StubArtifactCollector - implements ArtifactCollector -{ - /** - * Default constructor - */ - public StubArtifactCollector() - { - super(); - } - - @Override - public ArtifactResolutionResult collect( Set artifacts, Artifact originatingArtifact, - Map managedVersions, ArtifactResolutionRequest repositoryRequest, - ArtifactMetadataSource source, ArtifactFilter filter, - List listeners, - List conflictResolvers ) - { - return new ArtifactResolutionResult(); - } - - @Override - public ArtifactResolutionResult collect( Set artifacts, Artifact originatingArtifact, - Map managedVersions, ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source, ArtifactFilter filter, - List listeners, - List conflictResolvers ) - { - return new ArtifactResolutionResult(); - } - - @Override - public ArtifactResolutionResult collect( Set artifacts, Artifact originatingArtifact, - Map managedVersions, ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source, ArtifactFilter filter, - List listeners ) - { - return new ArtifactResolutionResult(); - } - - @Override - public ArtifactResolutionResult collect( Set artifacts, Artifact originatingArtifact, - ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source, ArtifactFilter filter, - List listeners ) - throws ArtifactResolutionException - { - return new ArtifactResolutionResult(); - } - -} diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactResolver.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactResolver.java deleted file mode 100644 index f950b58..0000000 --- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactResolver.java +++ /dev/null @@ -1,222 +0,0 @@ -package org.apache.maven.plugin.testing.stubs; - -/* - * 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. - */ - -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.apache.maven.artifact.Artifact; -import org.apache.maven.artifact.metadata.ArtifactMetadataSource; -import org.apache.maven.artifact.repository.ArtifactRepository; -import org.apache.maven.artifact.resolver.ArtifactNotFoundException; -import org.apache.maven.artifact.resolver.ArtifactResolutionException; -import org.apache.maven.artifact.resolver.ArtifactResolutionRequest; -import org.apache.maven.artifact.resolver.ArtifactResolutionResult; -import org.apache.maven.artifact.resolver.ArtifactResolver; -import org.apache.maven.artifact.resolver.ResolutionListener; -import org.apache.maven.artifact.resolver.filter.ArtifactFilter; -import org.apache.maven.plugin.testing.ArtifactStubFactory; -import org.apache.maven.wagon.events.TransferListener; - -/** - * Stub resolver. The constructor allows the specification of the exception to throw so that handling can be tested too. - * - * @author Brian Fox - */ -public class StubArtifactResolver - implements ArtifactResolver -{ - private final boolean throwArtifactResolutionException; - - private final boolean throwArtifactNotFoundException; - - private final ArtifactStubFactory factory; - - /** - * Default constructor - * - * @param factory - * @param throwArtifactResolutionException - * @param throwArtifactNotFoundException - */ - public StubArtifactResolver( ArtifactStubFactory factory, boolean throwArtifactResolutionException, - boolean throwArtifactNotFoundException ) - { - this.throwArtifactNotFoundException = throwArtifactNotFoundException; - this.throwArtifactResolutionException = throwArtifactResolutionException; - this.factory = factory; - } - - /** - * Creates dummy file and sets it in the artifact to simulate resolution - * - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolve(org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository) - */ - @Override - public void resolve( Artifact artifact, List remoteRepositories, - ArtifactRepository localRepository ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - if ( !this.throwArtifactNotFoundException && !this.throwArtifactResolutionException ) - { - try - { - if ( factory != null ) - { - factory.setArtifactFile( artifact, factory.getWorkingDir() ); - } - } - catch ( IOException e ) - { - throw new ArtifactResolutionException( "IOException: " + e.getMessage(), artifact, e ); - } - } - else - { - if ( throwArtifactResolutionException ) - { - throw new ArtifactResolutionException( "Catch!", artifact ); - } - - throw new ArtifactNotFoundException( "Catch!", artifact ); - } - } - - /** - * @return null. - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository, org.apache.maven.artifact.metadata.ArtifactMetadataSource) - */ - @Override - public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, - List remoteRepositories, - ArtifactRepository localRepository, - ArtifactMetadataSource source ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - return null; - } - - /** - * @return null. - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository, org.apache.maven.artifact.metadata.ArtifactMetadataSource, java.util.List) - */ - @Override - public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, - List remoteRepositories, - ArtifactRepository localRepository, - ArtifactMetadataSource source, - List listeners ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - return null; - } - - /** - * @return null. - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource, org.apache.maven.artifact.resolver.filter.ArtifactFilter) - */ - @Override - public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, - ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source, ArtifactFilter filter ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - return null; - } - - /** - * @return null. - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.Map, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource) - */ - @Override - public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, - Map managedVersions, ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - return null; - } - - /** - * @return null. - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.Map, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource, org.apache.maven.artifact.resolver.filter.ArtifactFilter) - */ - @Override - public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, - Map managedVersions, ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source, ArtifactFilter filter ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - return null; - } - - /** - * @return null. - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.Map, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource, org.apache.maven.artifact.resolver.filter.ArtifactFilter, java.util.List) - */ - @Override - public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, - Map managedVersions, ArtifactRepository localRepository, - List remoteRepositories, - ArtifactMetadataSource source, ArtifactFilter filter, - List listeners ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - return null; - } - - /** - * By default, do nothing. - * - * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveAlways(org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository) - */ - @Override - public void resolveAlways( Artifact artifact, List remoteRepositories, - ArtifactRepository localRepository ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - // nop - } - - @Override - public void resolve( Artifact artifact, List remoteRepositories, - ArtifactRepository localRepository, TransferListener downloadMonitor ) - throws ArtifactResolutionException, ArtifactNotFoundException - { - // TODO Auto-generated method stub - - } - - public ArtifactResolutionResult collect( ArtifactResolutionRequest request ) - { - return null; - } - - @Override - public ArtifactResolutionResult resolve( ArtifactResolutionRequest request ) - { - return null; - } -}