Class PlexusExtension

  • All Implemented Interfaces:
    org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.Extension

    public class PlexusExtension
    extends Object
    implements org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback
    This is a slightly modified version of the original plexus class available at https://raw.githubusercontent.com/codehaus-plexus/plexus-containers/master/plexus-container-default/ src/main/java/org/codehaus/plexus/PlexusTestCase.java in order to migrate the tests to JUnit 4.
    Author:
    Jason van Zyl, Trygve Laugstøl, Michal Maczka, Guillaume Nodet
    • Constructor Detail

      • PlexusExtension

        public PlexusExtension()
    • Method Detail

      • beforeEach

        public void beforeEach​(org.junit.jupiter.api.extension.ExtensionContext context)
                        throws Exception
        Specified by:
        beforeEach in interface org.junit.jupiter.api.extension.BeforeEachCallback
        Throws:
        Exception
      • setupContainer

        protected void setupContainer()
      • customizeContainerConfiguration

        protected void customizeContainerConfiguration​(org.codehaus.plexus.ContainerConfiguration containerConfiguration)
        Allow custom test case implementations do augment the default container configuration before executing tests.
        Parameters:
        containerConfiguration - ContainerConfiguration.
      • customizeContext

        protected void customizeContext​(org.codehaus.plexus.context.Context context)
      • customizeComponentConfiguration

        protected org.codehaus.plexus.configuration.PlexusConfiguration customizeComponentConfiguration()
      • afterEach

        public void afterEach​(org.junit.jupiter.api.extension.ExtensionContext context)
                       throws Exception
        Specified by:
        afterEach in interface org.junit.jupiter.api.extension.AfterEachCallback
        Throws:
        Exception
      • getContainer

        public org.codehaus.plexus.PlexusContainer getContainer()
      • getCustomConfigurationName

        protected String getCustomConfigurationName()
      • getConfigurationName

        protected String getConfigurationName​(String subname)
        Allow the retrieval of a container configuration that is based on the name of the test class being run. So if you have a test class called org.foo.FunTest, then this will produce a resource name of org/foo/FunTest.xml which would be used to configure the Plexus container before running your test.
        Parameters:
        subname - the subname
        Returns:
        A configruation name
      • getResourceAsStream

        protected InputStream getResourceAsStream​(String resource)
      • getClassLoader

        protected ClassLoader getClassLoader()
      • lookup

        protected <T> T lookup​(String componentKey)
                        throws org.codehaus.plexus.component.repository.exception.ComponentLookupException
        Throws:
        org.codehaus.plexus.component.repository.exception.ComponentLookupException
      • lookup

        protected <T> T lookup​(String role,
                               String roleHint)
                        throws org.codehaus.plexus.component.repository.exception.ComponentLookupException
        Throws:
        org.codehaus.plexus.component.repository.exception.ComponentLookupException
      • lookup

        protected <T> T lookup​(Class<T> componentClass)
                        throws org.codehaus.plexus.component.repository.exception.ComponentLookupException
        Throws:
        org.codehaus.plexus.component.repository.exception.ComponentLookupException
      • lookup

        protected <T> T lookup​(Class<T> componentClass,
                               String roleHint)
                        throws org.codehaus.plexus.component.repository.exception.ComponentLookupException
        Throws:
        org.codehaus.plexus.component.repository.exception.ComponentLookupException
      • release

        protected void release​(Object component)
                        throws org.codehaus.plexus.component.repository.exception.ComponentLifecycleException
        Throws:
        org.codehaus.plexus.component.repository.exception.ComponentLifecycleException
      • getTestFile

        public static File getTestFile​(String path)
      • getTestFile

        public static File getTestFile​(String basedir,
                                       String path)
      • getTestPath

        public static String getTestPath​(String path)
      • getBasedir

        public static String getBasedir()
      • getTestConfiguration

        public String getTestConfiguration()
      • getTestConfiguration

        public static String getTestConfiguration​(Class<?> clazz)