You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2020/05/20 18:32:04 UTC

[maven] 02/02: [MNG-6909] More CDI in maven-compat

This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a commit to branch MNG-6909
in repository https://gitbox.apache.org/repos/asf/maven.git

commit 08e17391be4b376bd362255451c0e976f5372538
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Wed May 20 20:29:31 2020 +0200

    [MNG-6909] More CDI in maven-compat
---
 .../artifact/deployer/ArtifactDeployerTest.java    | 11 +++-----
 .../deployer/SimpleArtifactMetadataSource.java     | 13 ++++-----
 .../factory/DefaultArtifactFactoryTest.java        | 24 +++++++++++++++--
 .../artifact/installer/ArtifactInstallerTest.java  | 11 +++-----
 .../artifact/resolver/ArtifactResolverTest.java    | 13 +++------
 .../resolver/DefaultArtifactResolverTest.java      |  9 +++----
 .../transform/TransformationManagerTest.java       | 24 ++++++++++++++---
 .../manager/DefaultProfileManagerTest.java         | 14 +++++++---
 .../project/AbstractMavenProjectTestCase.java      | 18 ++++++++++---
 .../apache/maven/project/ProjectClasspathTest.java | 19 ++++++++++---
 .../apache/maven/project/TestProjectBuilder.java   |  2 +-
 .../repository/DefaultMirrorSelectorTest.java      | 11 ++++----
 .../repository/LegacyRepositorySystemTest.java     | 23 ++++++++--------
 .../maven/repository/MirrorProcessorTest.java      | 28 ++++++++++++-------
 .../repository/legacy/DefaultWagonManagerTest.java | 31 +++++++++++-----------
 .../legacy/LegacyRepositorySystemTest.java         | 19 +++++++------
 .../maven/repository/legacy/PerLookupWagon.java    |  2 +-
 .../conflict/AbstractConflictResolverTest.java     | 16 ++++++-----
 18 files changed, 174 insertions(+), 114 deletions(-)

diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/deployer/ArtifactDeployerTest.java b/maven-compat/src/test/java/org/apache/maven/artifact/deployer/ArtifactDeployerTest.java
index f929f48..30b1ab3 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/deployer/ArtifactDeployerTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/deployer/ArtifactDeployerTest.java
@@ -26,22 +26,17 @@ import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.codehaus.plexus.util.FileUtils;
 
+import javax.inject.Inject;
+
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
  */
 public class ArtifactDeployerTest
     extends AbstractArtifactComponentTestCase
 {
+    @Inject
     private ArtifactDeployer artifactDeployer;
 
-    protected void setUp()
-        throws Exception
-    {
-        super.setUp();
-
-        artifactDeployer = (ArtifactDeployer) lookup( ArtifactDeployer.ROLE );
-    }
-
     protected String component()
     {
         return "deployer";
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java b/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java
index f6bebcb..8f6caa8 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java
@@ -31,34 +31,35 @@ import org.apache.maven.repository.legacy.metadata.ArtifactMetadataSource;
 import org.apache.maven.repository.legacy.metadata.MetadataResolutionRequest;
 import org.apache.maven.repository.legacy.metadata.ResolutionGroup;
 
+import javax.inject.Named;
+import javax.inject.Singleton;
+
 /** @author Jason van Zyl */
+@Named( "classpath" )
+@Singleton
 public class SimpleArtifactMetadataSource
     implements ArtifactMetadataSource
 {
     public ResolutionGroup retrieve( Artifact artifact, ArtifactRepository localRepository,
                                      List<ArtifactRepository> remoteRepositories )
-        throws ArtifactMetadataRetrievalException
     {
         throw new UnsupportedOperationException( "Cannot retrieve metadata in this test case" );
     }
 
     public List<ArtifactVersion> retrieveAvailableVersions( Artifact artifact, ArtifactRepository localRepository,
                                                             List<ArtifactRepository> remoteRepositories )
-        throws ArtifactMetadataRetrievalException
     {
-        return Collections.<ArtifactVersion>singletonList( new DefaultArtifactVersion( "10.1.3" ) );
+        return Collections.singletonList( new DefaultArtifactVersion( "10.1.3" ) );
     }
 
     public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository( Artifact artifact,
                                                                                     ArtifactRepository localRepository,
                                                                                     ArtifactRepository remoteRepository )
-        throws ArtifactMetadataRetrievalException
     {
-        return Collections.<ArtifactVersion>singletonList( new DefaultArtifactVersion( "10.1.3" ) );
+        return Collections.singletonList( new DefaultArtifactVersion( "10.1.3" ) );
     }
 
     public ResolutionGroup retrieve( MetadataResolutionRequest request )
-        throws ArtifactMetadataRetrievalException
     {
         return retrieve( request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories() );
     }
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/factory/DefaultArtifactFactoryTest.java b/maven-compat/src/test/java/org/apache/maven/artifact/factory/DefaultArtifactFactoryTest.java
index a90c33b..cee9f5a 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/factory/DefaultArtifactFactoryTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/factory/DefaultArtifactFactoryTest.java
@@ -21,14 +21,25 @@ package org.apache.maven.artifact.factory;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.versioning.VersionRange;
+import org.apache.maven.execution.DefaultMavenExecutionRequest;
+import org.apache.maven.execution.DefaultMavenExecutionResult;
+import org.apache.maven.execution.MavenSession;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
+import org.eclipse.aether.RepositorySystemSession;
+
+import javax.inject.Inject;
+import java.util.Collections;
 
 public class DefaultArtifactFactoryTest
     extends PlexusTestCase
 {
 
+    @Inject
+    ArtifactFactory factory;
+
     @Override
     protected void customizeContainerConfiguration( ContainerConfiguration containerConfiguration )
     {
@@ -37,10 +48,19 @@ public class DefaultArtifactFactoryTest
         containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
-    public void testPropagationOfSystemScopeRegardlessOfInheritedScope() throws Exception
+    @Override
+    protected void setUp()
+            throws Exception
     {
-        ArtifactFactory factory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
+        super.setUp();
 
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
+    }
+
+    public void testPropagationOfSystemScopeRegardlessOfInheritedScope()
+    {
         Artifact artifact = factory.createDependencyArtifact( "test-grp", "test-artifact", VersionRange.createFromVersion("1.0"), "type", null, "system", "provided" );
         Artifact artifact2 = factory.createDependencyArtifact( "test-grp", "test-artifact-2", VersionRange.createFromVersion("1.0"), "type", null, "system", "test" );
         Artifact artifact3 = factory.createDependencyArtifact( "test-grp", "test-artifact-3", VersionRange.createFromVersion("1.0"), "type", null, "system", "runtime" );
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/installer/ArtifactInstallerTest.java b/maven-compat/src/test/java/org/apache/maven/artifact/installer/ArtifactInstallerTest.java
index 21bfb2b..df519b3 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/installer/ArtifactInstallerTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/installer/ArtifactInstallerTest.java
@@ -24,22 +24,17 @@ import java.io.File;
 import org.apache.maven.artifact.AbstractArtifactComponentTestCase;
 import org.apache.maven.artifact.Artifact;
 
+import javax.inject.Inject;
+
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
  */
 public class ArtifactInstallerTest
     extends AbstractArtifactComponentTestCase
 {
+    @Inject
     private ArtifactInstaller artifactInstaller;
 
-    protected void setUp()
-        throws Exception
-    {
-        super.setUp();
-
-        artifactInstaller = (ArtifactInstaller) lookup( ArtifactInstaller.ROLE );
-    }
-
     protected String component()
     {
         return "installer";
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java b/maven-compat/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java
index 72a2017..00c1344 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java
@@ -36,6 +36,8 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.versioning.ArtifactVersion;
 import org.apache.maven.repository.legacy.metadata.MetadataResolutionRequest;
 
+import javax.inject.Inject;
+
 // It would be cool if there was a hook that i could use to setup a test environment.
 // I want to setup a local/remote repositories for testing but i don't want to have
 // to change them when i change the layout of the repositories. So i want to generate
@@ -48,7 +50,8 @@ import org.apache.maven.repository.legacy.metadata.MetadataResolutionRequest;
 public class ArtifactResolverTest
     extends AbstractArtifactComponentTestCase
 {
-    private DefaultArtifactResolver artifactResolver;
+    @Inject
+    private ArtifactResolver artifactResolver;
 
     private Artifact projectArtifact;
 
@@ -58,8 +61,6 @@ public class ArtifactResolverTest
     {
         super.setUp();
 
-        artifactResolver = (DefaultArtifactResolver) lookup( ArtifactResolver.class );
-
         projectArtifact = createLocalArtifact( "project", "3.0" );
     }
 
@@ -67,7 +68,6 @@ public class ArtifactResolverTest
     protected void tearDown()
         throws Exception
     {
-        artifactFactory = null;
         projectArtifact = null;
         super.tearDown();
     }
@@ -193,7 +193,6 @@ public class ArtifactResolverTest
         {
             public ResolutionGroup retrieve( Artifact artifact, ArtifactRepository localRepository,
                                              List<ArtifactRepository> remoteRepositories )
-                throws ArtifactMetadataRetrievalException
             {
                 Set<Artifact> dependencies = new HashSet<>();
 
@@ -203,7 +202,6 @@ public class ArtifactResolverTest
             public List<ArtifactVersion> retrieveAvailableVersions( Artifact artifact,
                                                                     ArtifactRepository localRepository,
                                                                     List<ArtifactRepository> remoteRepositories )
-                throws ArtifactMetadataRetrievalException
             {
                 throw new UnsupportedOperationException( "Cannot get available versions in this test case" );
             }
@@ -212,19 +210,16 @@ public class ArtifactResolverTest
                                                                                             Artifact artifact,
                                                                                             ArtifactRepository localRepository,
                                                                                             ArtifactRepository remoteRepository )
-                throws ArtifactMetadataRetrievalException
             {
                 throw new UnsupportedOperationException( "Cannot get available versions in this test case" );
             }
 
             public ResolutionGroup retrieve( MetadataResolutionRequest request )
-                throws ArtifactMetadataRetrievalException
             {
                 return retrieve( request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories() );
             }
 
             public List<ArtifactVersion> retrieveAvailableVersions( MetadataResolutionRequest request )
-                throws ArtifactMetadataRetrievalException
             {
                 return retrieveAvailableVersions( request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories() );
             }
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactResolverTest.java b/maven-compat/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactResolverTest.java
index 914d9d1..9e221ee 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactResolverTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactResolverTest.java
@@ -25,10 +25,13 @@ import org.apache.maven.artifact.AbstractArtifactComponentTestCase;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.resolver.DefaultArtifactResolver.DaemonThreadCreator;
 
+import javax.inject.Inject;
+
 public class DefaultArtifactResolverTest
     extends AbstractArtifactComponentTestCase
 {
-    private DefaultArtifactResolver artifactResolver;
+    @Inject
+    private ArtifactResolver artifactResolver;
 
     private Artifact projectArtifact;
 
@@ -37,9 +40,6 @@ public class DefaultArtifactResolverTest
         throws Exception
     {
         super.setUp();
-
-        artifactResolver = (DefaultArtifactResolver) lookup( ArtifactResolver.class );
-
         projectArtifact = createLocalArtifact( "project", "3.0" );
     }
 
@@ -47,7 +47,6 @@ public class DefaultArtifactResolverTest
     protected void tearDown()
         throws Exception
     {
-        artifactFactory = null;
         projectArtifact = null;
         super.tearDown();
     }
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/transform/TransformationManagerTest.java b/maven-compat/src/test/java/org/apache/maven/artifact/transform/TransformationManagerTest.java
index 45b4c00..ff0d3bb 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/transform/TransformationManagerTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/transform/TransformationManagerTest.java
@@ -15,20 +15,28 @@ package org.apache.maven.artifact.transform;
  * the License.
  */
 
+import java.util.Collections;
 import java.util.List;
 
+import org.apache.maven.repository.legacy.resolver.transform.ArtifactTransformation;
 import org.apache.maven.repository.legacy.resolver.transform.ArtifactTransformationManager;
 import org.apache.maven.repository.legacy.resolver.transform.LatestArtifactTransformation;
 import org.apache.maven.repository.legacy.resolver.transform.ReleaseArtifactTransformation;
 import org.apache.maven.repository.legacy.resolver.transform.SnapshotTransformation;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 
+import javax.inject.Inject;
+
 /** @author Jason van Zyl */
 public class TransformationManagerTest
     extends PlexusTestCase
 {
+    @Inject
+    ArtifactTransformationManager tm;
+
     @Override
     protected void customizeContainerConfiguration( ContainerConfiguration containerConfiguration )
     {
@@ -37,12 +45,20 @@ public class TransformationManagerTest
         containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
-    public void testTransformationManager()
-        throws Exception
+    @Override
+    protected void setUp()
+            throws Exception
     {
-        ArtifactTransformationManager tm = lookup( ArtifactTransformationManager.class );
+        super.setUp();
 
-        List tms = tm.getArtifactTransformations();
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
+    }
+
+    public void testTransformationManager()
+    {
+        List<ArtifactTransformation> tms = tm.getArtifactTransformations();
 
         assertEquals( 3, tms.size() );
 
diff --git a/maven-compat/src/test/java/org/apache/maven/profiles/manager/DefaultProfileManagerTest.java b/maven-compat/src/test/java/org/apache/maven/profiles/manager/DefaultProfileManagerTest.java
index 7431808..6b8caab 100644
--- a/maven-compat/src/test/java/org/apache/maven/profiles/manager/DefaultProfileManagerTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/profiles/manager/DefaultProfileManagerTest.java
@@ -19,28 +19,34 @@ package org.apache.maven.profiles.manager;
  * under the License.
  */
 
+import java.util.Collections;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.maven.execution.DefaultMavenExecutionRequest;
+import org.apache.maven.execution.DefaultMavenExecutionResult;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Activation;
 import org.apache.maven.model.ActivationProperty;
 import org.apache.maven.model.Profile;
 import org.apache.maven.profiles.DefaultProfileManager;
 import org.apache.maven.profiles.ProfileManager;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
+import org.eclipse.aether.RepositorySystemSession;
 
 public class DefaultProfileManagerTest
     extends PlexusTestCase
 {
 
     @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
+    protected void customizeContainerConfiguration( ContainerConfiguration containerConfiguration )
     {
-        super.customizeContainerConfiguration( configuration );
-        configuration.setAutoWiring( true );
-        configuration.setClassPathScanning( PlexusConstants.SCANNING_ON );
+        super.customizeContainerConfiguration( containerConfiguration );
+        containerConfiguration.setAutoWiring( true );
+        containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
     public void testShouldActivateDefaultProfile()
diff --git a/maven-compat/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java b/maven-compat/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
index 4caeb6f..d05aa8f 100644
--- a/maven-compat/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
+++ b/maven-compat/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
@@ -21,17 +21,25 @@ import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.util.Arrays;
+import java.util.Collections;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.execution.DefaultMavenExecutionRequest;
+import org.apache.maven.execution.DefaultMavenExecutionResult;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.building.ModelBuildingException;
 import org.apache.maven.model.building.ModelProblem;
 import org.apache.maven.repository.RepositorySystem;
 import org.apache.maven.repository.internal.MavenRepositorySystemUtils;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 import org.eclipse.aether.DefaultRepositorySystemSession;
+import org.eclipse.aether.RepositorySystemSession;
+
+import javax.inject.Inject;
 
 /**
  * @author Jason van Zyl
@@ -41,6 +49,7 @@ public abstract class AbstractMavenProjectTestCase
 {
     protected ProjectBuilder projectBuilder;
 
+    @Inject
     protected RepositorySystem repositorySystem;
 
     @Override
@@ -51,11 +60,16 @@ public abstract class AbstractMavenProjectTestCase
         containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
+    @Override
     protected void setUp()
-        throws Exception
+            throws Exception
     {
         super.setUp();
 
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
+
         if ( getContainer().hasComponent( ProjectBuilder.class, "test" ) )
         {
             projectBuilder = lookup( ProjectBuilder.class, "test" );
@@ -65,8 +79,6 @@ public abstract class AbstractMavenProjectTestCase
             // default over to the main project builder...
             projectBuilder = lookup( ProjectBuilder.class );
         }
-
-        repositorySystem = lookup( RepositorySystem.class );
     }
 
     @Override
diff --git a/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java b/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
index 10825d2..96f1fea 100644
--- a/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
@@ -20,12 +20,18 @@ package org.apache.maven.project;
  */
 
 import java.io.File;
+import java.util.Collections;
 
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.execution.DefaultMavenExecutionRequest;
+import org.apache.maven.execution.DefaultMavenExecutionResult;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.repository.RepositorySystem;
 import org.apache.maven.repository.internal.DefaultArtifactDescriptorReader;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
+import org.eclipse.aether.RepositorySystemSession;
 import org.eclipse.aether.impl.ArtifactDescriptorReader;
 import org.eclipse.aether.impl.ArtifactResolver;
 
@@ -42,16 +48,21 @@ public class ProjectClasspathTest
         containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
-    public void setUp()
-        throws Exception
+    @Override
+    protected void setUp()
+            throws Exception
     {
+        super.setUp();
+
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
+
         ArtifactResolver resolver = lookup( ArtifactResolver.class, "classpath" );
         DefaultArtifactDescriptorReader pomReader = (DefaultArtifactDescriptorReader)lookup(ArtifactDescriptorReader.class);
         pomReader.setArtifactResolver( resolver );
 
         projectBuilder = lookup( ProjectBuilder.class, "classpath" );
-
-        repositorySystem = lookup( RepositorySystem.class );
     }
 
     @Override
diff --git a/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java b/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java
index e5311f0..18deb43 100644
--- a/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java
+++ b/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java
@@ -23,7 +23,7 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
 import javax.inject.Named;
 import javax.inject.Singleton;
 
-@Named("classpath")
+@Named( "classpath" )
 @Singleton
 public class TestProjectBuilder
     extends DefaultProjectBuilder
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java b/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java
index 4e8cdb0..5735db0 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java
@@ -21,18 +21,17 @@ package org.apache.maven.repository;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.DefaultArtifactRepository;
-import org.codehaus.plexus.PlexusTestCase;
+import org.junit.Test;
+
+import static org.junit.Assert.assertFalse;
 
 public class DefaultMirrorSelectorTest
-    extends PlexusTestCase
 {
-
+    @Test
     public void testMirrorWithMirrorOfPatternContainingANegationIsNotSelected()
     {
         ArtifactRepository repository = new DefaultArtifactRepository( "snapshots.repo", "http://whatever", null );
         String pattern = "external:*, !snapshots.repo";
-        boolean matches = DefaultMirrorSelector.matchPattern( repository, pattern );
-        System.out.println( matches );
-        assertFalse( matches );
+        assertFalse( DefaultMirrorSelector.matchPattern( repository, pattern ) );
     }
 }
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java b/maven-compat/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java
index 17dfcfc..65dbd89 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java
@@ -17,6 +17,7 @@ package org.apache.maven.repository;
 
 import java.io.File;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 import org.apache.maven.artifact.Artifact;
@@ -31,15 +32,19 @@ import org.apache.maven.model.Dependency;
 import org.apache.maven.model.Repository;
 import org.apache.maven.model.RepositoryPolicy;
 import org.apache.maven.plugin.LegacySupport;
+import org.apache.maven.project.ProjectBuilder;
 import org.apache.maven.repository.RepositorySystem;
 import org.apache.maven.repository.legacy.LegacyRepositorySystem;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 import org.eclipse.aether.DefaultRepositorySystemSession;
 import org.eclipse.aether.internal.impl.SimpleLocalRepositoryManagerFactory;
 import org.eclipse.aether.repository.LocalRepository;
 
+import javax.inject.Inject;
+
 /**
  * Tests {@link LegacyRepositorySystem}.
  *
@@ -48,8 +53,9 @@ import org.eclipse.aether.repository.LocalRepository;
 public class LegacyRepositorySystemTest
     extends PlexusTestCase
 {
+    @Inject
     private RepositorySystem repositorySystem;
-
+    @Inject
     private ResolutionErrorHandler resolutionErrorHandler;
 
     @Override
@@ -62,20 +68,13 @@ public class LegacyRepositorySystemTest
 
     @Override
     protected void setUp()
-        throws Exception
+            throws Exception
     {
         super.setUp();
-        repositorySystem = lookup( RepositorySystem.class, "default" );
-        resolutionErrorHandler = lookup( ResolutionErrorHandler.class );
-    }
 
-    @Override
-    protected void tearDown()
-        throws Exception
-    {
-        repositorySystem = null;
-        resolutionErrorHandler = null;
-        super.tearDown();
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
     }
 
     protected List<ArtifactRepository> getRemoteRepositories()
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java b/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
index 5764575..8492f7b 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
@@ -20,35 +20,45 @@ package org.apache.maven.repository;
  */
 
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.repository.legacy.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
 import org.apache.maven.settings.Mirror;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 
+import javax.inject.Inject;
+
 public class MirrorProcessorTest
     extends PlexusTestCase
 {
+    @Inject
     private DefaultMirrorSelector mirrorSelector;
+    @Inject
     private ArtifactRepositoryFactory repositorySystem;
 
-    protected void setUp()
-        throws Exception
+    @Override
+    protected void customizeContainerConfiguration( ContainerConfiguration containerConfiguration )
     {
-        mirrorSelector = (DefaultMirrorSelector) lookup( MirrorSelector.class );
-        repositorySystem = lookup( ArtifactRepositoryFactory.class );
+        super.customizeContainerConfiguration( containerConfiguration );
+        containerConfiguration.setAutoWiring( true );
+        containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
     @Override
-    protected void tearDown()
-        throws Exception
+    protected void setUp()
+            throws Exception
     {
-        mirrorSelector = null;
-        repositorySystem = null;
+        super.setUp();
 
-        super.tearDown();
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
     }
 
     public void testExternalURL()
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java b/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
index 1b3cb79..b673d65 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
@@ -22,6 +22,7 @@ package org.apache.maven.repository.legacy;
 import java.io.File;
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 import org.apache.maven.artifact.Artifact;
@@ -44,22 +45,28 @@ import org.apache.maven.wagon.events.TransferListener;
 import org.apache.maven.wagon.observers.AbstractTransferListener;
 import org.apache.maven.wagon.observers.Debug;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.util.FileUtils;
 
+import javax.inject.Inject;
+
 /**
  * @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
  */
 public class DefaultWagonManagerTest
     extends PlexusTestCase
 {
-    private DefaultWagonManager wagonManager;
+    @Inject
+    private WagonManager wagonManager;
 
-    private TransferListener transferListener = new Debug();
+    private final TransferListener transferListener = new Debug();
 
+    @Inject
     private ArtifactFactory artifactFactory;
 
+    @Inject
     private ArtifactRepositoryFactory artifactRepositoryFactory;
 
     @Override
@@ -70,22 +77,15 @@ public class DefaultWagonManagerTest
         containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
+    @Override
     protected void setUp()
-        throws Exception
+            throws Exception
     {
         super.setUp();
-        wagonManager = (DefaultWagonManager) lookup( WagonManager.class );
-        artifactFactory = lookup( ArtifactFactory.class );
-        artifactRepositoryFactory = lookup( ArtifactRepositoryFactory.class );
-    }
 
-    @Override
-    protected void tearDown()
-        throws Exception
-    {
-        wagonManager = null;
-        artifactFactory = null;
-        super.tearDown();
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
     }
 
     public void testUnnecessaryRepositoryLookup()
@@ -161,8 +161,7 @@ public class DefaultWagonManagerTest
     }
 
     public void testGetRemoteJar()
-        throws TransferFailedException, ResourceDoesNotExistException, UnsupportedProtocolException, IOException,
-        AuthorizationException
+        throws TransferFailedException, ResourceDoesNotExistException, UnsupportedProtocolException, IOException
     {
         Artifact artifact = createTestArtifact( "target/test-data/get-remote-jar", "jar" );
 
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/legacy/LegacyRepositorySystemTest.java b/maven-compat/src/test/java/org/apache/maven/repository/legacy/LegacyRepositorySystemTest.java
index f34c05f..d5f281f 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/legacy/LegacyRepositorySystemTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/legacy/LegacyRepositorySystemTest.java
@@ -17,15 +17,19 @@ package org.apache.maven.repository.legacy;
 
 import java.io.File;
 import java.util.Arrays;
+import java.util.Collections;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.Authentication;
 import org.apache.maven.repository.RepositorySystem;
 import org.apache.maven.settings.Server;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 
+import javax.inject.Inject;
+
 /**
  * Tests {@link LegacyRepositorySystem}.
  *
@@ -34,6 +38,7 @@ import org.codehaus.plexus.PlexusTestCase;
 public class LegacyRepositorySystemTest
     extends PlexusTestCase
 {
+    @Inject
     private RepositorySystem repositorySystem;
 
     @Override
@@ -46,18 +51,13 @@ public class LegacyRepositorySystemTest
 
     @Override
     protected void setUp()
-        throws Exception
+            throws Exception
     {
         super.setUp();
-        repositorySystem = lookup( RepositorySystem.class, "default" );
-    }
 
-    @Override
-    protected void tearDown()
-        throws Exception
-    {
-        repositorySystem = null;
-        super.tearDown();
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
     }
 
     public void testThatLocalRepositoryWithSpacesIsProperlyHandled()
@@ -69,7 +69,6 @@ public class LegacyRepositorySystemTest
     }
 
     public void testAuthenticationHandling()
-        throws Exception
     {
         Server server = new Server();
         server.setId( "repository" );
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/legacy/PerLookupWagon.java b/maven-compat/src/test/java/org/apache/maven/repository/legacy/PerLookupWagon.java
index 4ab5fe6..edf43aa 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/legacy/PerLookupWagon.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/legacy/PerLookupWagon.java
@@ -27,7 +27,7 @@ import javax.inject.Singleton;
 /**
  * Wagon with per-lookup instantiation strategy.
  */
-@Named("perlookup")
+@Named( "perlookup" )
 public class PerLookupWagon
     extends WagonMock
 {
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/conflict/AbstractConflictResolverTest.java b/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/conflict/AbstractConflictResolverTest.java
index 1b4f4f4..54ae26a 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/conflict/AbstractConflictResolverTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/conflict/AbstractConflictResolverTest.java
@@ -27,9 +27,11 @@ import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException
 import org.apache.maven.artifact.versioning.VersionRange;
 import org.apache.maven.repository.legacy.resolver.conflict.ConflictResolver;
 import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 
+import javax.inject.Inject;
 import java.util.Collections;
 
 /**
@@ -54,6 +56,7 @@ public abstract class AbstractConflictResolverTest
 
     private final String roleHint;
 
+    @Inject
     private ArtifactFactory artifactFactory;
 
     private ConflictResolver conflictResolver;
@@ -76,14 +79,16 @@ public abstract class AbstractConflictResolverTest
         containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
     }
 
-    /*
-     * @see junit.framework.TestCase#setUp()
-     */
-    protected void setUp() throws Exception
+    @Override
+    protected void setUp()
+            throws Exception
     {
         super.setUp();
 
-        artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
+        ((DefaultPlexusContainer)getContainer())
+                .addPlexusInjector( Collections.emptyList(),
+                        binder ->  binder.requestInjection( this ) );
+
         conflictResolver = (ConflictResolver) lookup( ConflictResolver.ROLE, roleHint );
 
         a1 = createArtifact( "a", "1.0" );
@@ -100,7 +105,6 @@ public abstract class AbstractConflictResolverTest
         a2 = null;
         b1 = null;
 
-        artifactFactory = null;
         conflictResolver = null;
 
         super.tearDown();