diff --git a/plexus-component-metadata/pom.xml b/plexus-component-metadata/pom.xml
index a0ae9f89..9ef4a4fa 100644
--- a/plexus-component-metadata/pom.xml
+++ b/plexus-component-metadata/pom.xml
@@ -104,8 +104,20 @@
provided
- junit
- junit
+ org.codehaus.plexus
+ plexus-testing
+ 1.2.0
+ test
+
+
+ org.junit.jupiter
+ junit-jupiter-api
+ test
+
+
+ org.slf4j
+ slf4j-simple
+ 1.7.36
test
diff --git a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/DefaultComponentDescriptorWriterTest.java b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/DefaultComponentDescriptorWriterTest.java
index c25dc7ec..d44bf627 100644
--- a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/DefaultComponentDescriptorWriterTest.java
+++ b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/DefaultComponentDescriptorWriterTest.java
@@ -16,6 +16,8 @@
package org.codehaus.plexus.metadata;
+import javax.inject.Inject;
+
import java.io.File;
import java.io.StringReader;
import java.io.StringWriter;
@@ -23,7 +25,6 @@
import java.util.LinkedList;
import java.util.List;
-import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.classworlds.ClassWorld;
import org.codehaus.plexus.classworlds.realm.ClassRealm;
import org.codehaus.plexus.component.repository.*;
@@ -33,38 +34,36 @@
import org.codehaus.plexus.metadata.merge.ComponentsXmlMerger;
import org.codehaus.plexus.metadata.merge.Merger;
import org.codehaus.plexus.metadata.merge.PlexusXmlMerger;
+import org.codehaus.plexus.testing.PlexusTest;
import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
/**
* Test for the {@link DefaultComponentDescriptorWriter} class.
*
* @version $Rev$ $Date$
*/
-public class DefaultComponentDescriptorWriterTest extends PlexusTestCase {
- private DefaultComponentDescriptorWriter descriptorWriter;
-
- // @Override
- protected void setUp() throws Exception {
- super.setUp();
-
- descriptorWriter = (DefaultComponentDescriptorWriter) lookup(ComponentDescriptorWriter.class);
- assertNotNull(descriptorWriter);
- }
+@PlexusTest
+class DefaultComponentDescriptorWriterTest {
- // @Override
- protected void tearDown() throws Exception {
- descriptorWriter = null;
+ @Inject
+ private DefaultComponentDescriptorWriter descriptorWriter;
- super.tearDown();
- }
+ @Inject
+ private MetadataGenerator generator;
- public void testBasic() throws Exception {
+ @Test
+ void testBasic() throws Exception {
ComponentSetDescriptor set = new ComponentSetDescriptor();
- ComponentDescriptor component = new ComponentDescriptor();
+ ComponentDescriptor component = new ComponentDescriptor<>();
component.setImplementation("java.lang.String");
component.setRole("foo");
component.setRoleHint("bar");
@@ -105,8 +104,8 @@ public void testBasic() throws Exception {
//
}
- public void testComponentsOrder() throws Exception {
- MetadataGenerator generator = lookup(MetadataGenerator.class);
+ @Test
+ void testComponentsOrder() throws Exception {
assertNotNull(generator);
MetadataGenerationRequest request = new MetadataGenerationRequest();
@@ -118,58 +117,52 @@ public void testComponentsOrder() throws Exception {
generator.generateDescriptor(request);
- assertTrue("Descriptor not generated", request.outputFile.exists());
+ assertTrue(request.outputFile.exists(), "Descriptor not generated");
Document doc = new SAXBuilder().build(request.outputFile);
// check if the components are sorted by role+impl
List components = doc.getRootElement().getChild("components").getChildren();
- assertEquals("Number of components", 5, components.size());
+ assertEquals(5, components.size(), "Number of components");
assertEquals(
- "Component 1 role",
ComponentDescriptorExtractor.class.getName(),
- components.get(0).getChild("role").getText());
+ components.get(0).getChild("role").getText(),
+ "Component 1 role");
assertEquals(
- "Component 1 impl",
ClassComponentDescriptorExtractor.class.getName(),
- components.get(0).getChild("implementation").getText());
+ components.get(0).getChild("implementation").getText(),
+ "Component 1 impl");
assertEquals(
- "Component 2 role",
ComponentDescriptorExtractor.class.getName(),
- components.get(1).getChild("role").getText());
+ components.get(1).getChild("role").getText(),
+ "Component 2 role");
assertEquals(
- "Component 2 impl",
SourceComponentDescriptorExtractor.class.getName(),
- components.get(1).getChild("implementation").getText());
+ components.get(1).getChild("implementation").getText(),
+ "Component 2 impl");
assertEquals(
- "Component 3 role",
MetadataGenerator.class.getName(),
- components.get(2).getChild("role").getText());
+ components.get(2).getChild("role").getText(),
+ "Component 3 role");
assertEquals(
- "Component 3 impl",
DefaultMetadataGenerator.class.getName(),
- components.get(2).getChild("implementation").getText());
+ components.get(2).getChild("implementation").getText(),
+ "Component 3 impl");
+ assertEquals(Merger.class.getName(), components.get(3).getChild("role").getText(), "Component 4 role");
assertEquals(
- "Component 4 role",
- Merger.class.getName(),
- components.get(3).getChild("role").getText());
- assertEquals(
- "Component 4 impl",
ComponentsXmlMerger.class.getName(),
- components.get(3).getChild("implementation").getText());
+ components.get(3).getChild("implementation").getText(),
+ "Component 4 impl");
+ assertEquals(Merger.class.getName(), components.get(4).getChild("role").getText(), "Component 5 role");
assertEquals(
- "Component 5 role",
- Merger.class.getName(),
- components.get(4).getChild("role").getText());
- assertEquals(
- "Component 5 impl",
PlexusXmlMerger.class.getName(),
- components.get(4).getChild("implementation").getText());
+ components.get(4).getChild("implementation").getText(),
+ "Component 5 impl");
}
// TODO copied from PlexusTools.buildConfiguration() - find a better way to do this
diff --git a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/AnnotationComponentGleanerTest.java b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/AnnotationComponentGleanerTest.java
index ff542535..f2ab8c04 100644
--- a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/AnnotationComponentGleanerTest.java
+++ b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/AnnotationComponentGleanerTest.java
@@ -18,20 +18,24 @@
import java.util.List;
-import junit.framework.TestCase;
import org.codehaus.plexus.component.repository.ComponentDescriptor;
import org.codehaus.plexus.component.repository.ComponentRequirement;
import org.codehaus.plexus.component.repository.ComponentRequirementList;
import org.codehaus.plexus.configuration.PlexusConfiguration;
import org.codehaus.plexus.metadata.gleaner.ann.AnnotatedComponent;
import org.codehaus.plexus.metadata.gleaner.ann.AnnotatedComponentRole;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
/**
* @author Eugene Kuleshov
*/
-public class AnnotationComponentGleanerTest extends TestCase {
+class AnnotationComponentGleanerTest {
- public void testGlean() throws Exception {
+ @Test
+ void testGlean() throws Exception {
AnnotationComponentGleaner gleaner = new AnnotationComponentGleaner();
Class c = AnnotatedComponent.class;
ComponentDescriptor> descriptor = gleaner.glean(c.getName(), c.getClassLoader());
@@ -40,7 +44,7 @@ public void testGlean() throws Exception {
assertEquals(AnnotatedComponentRole.class.getName(), descriptor.getRole());
List requirements = descriptor.getRequirements();
- assertEquals(requirements.toString(), 2, requirements.size());
+ assertEquals(2, requirements.size(), requirements.toString());
ComponentRequirement requirement = requirements.get(0);
assertEquals("dependency", requirement.getFieldName());
diff --git a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/QDoxComponentGleanerTest.java b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/QDoxComponentGleanerTest.java
index aaa71ffc..3ac9b12e 100644
--- a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/QDoxComponentGleanerTest.java
+++ b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/gleaner/QDoxComponentGleanerTest.java
@@ -21,41 +21,43 @@
import com.thoughtworks.qdox.JavaProjectBuilder;
import com.thoughtworks.qdox.model.JavaClass;
import com.thoughtworks.qdox.model.JavaSource;
-import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.component.repository.ComponentDescriptor;
import org.codehaus.plexus.component.repository.ComponentRequirement;
import org.codehaus.plexus.configuration.PlexusConfiguration;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
/**
* Tests for the {@link QDoxComponentGleaner} class.
*
* @version $Rev$ $Date$
*/
-public class QDoxComponentGleanerTest extends PlexusTestCase {
+class QDoxComponentGleanerTest {
private QDoxComponentGleaner gleaner;
private JavaProjectBuilder builder;
- // @Override
- protected void setUp() throws Exception {
- super.setUp();
-
+ @BeforeEach
+ public void setUp() {
gleaner = new QDoxComponentGleaner();
builder = new JavaProjectBuilder();
}
- // @Override
- protected void tearDown() throws Exception {
+ @AfterEach
+ protected void tearDown() {
gleaner = null;
builder = null;
-
- super.tearDown();
}
private JavaSource addSource(final String name) throws IOException {
File url = new File(
- getBasedir(),
- "src/test/java/" + getClass().getPackage().getName().replace('.', '/') + "/" + name);
+ ".", "src/test/java/" + this.getClass().getPackage().getName().replace('.', '/') + "/" + name);
assertTrue(url.exists());
return builder.addSource(url);
}
@@ -87,12 +89,14 @@ private ComponentDescriptor> glean(final String name) throws Exception {
return glean(name, null);
}
- public void testNoAnnotationsClass() throws Exception {
+ @Test
+ void testNoAnnotationsClass() throws Exception {
ComponentDescriptor> component = glean("NoAnnotationsClass.java");
assertNull(component);
}
- public void testAbstractClass() throws Exception {
+ @Test
+ void testAbstractClass() throws Exception {
ComponentDescriptor> component = glean("AbstractClass.java");
assertNull(component);
}
@@ -104,12 +108,14 @@ public void testAbstractWithAnnoClass() throws Exception {
}
*/
- public void testNoAnnotationsIntf() throws Exception {
+ @Test
+ void testNoAnnotationsIntf() throws Exception {
ComponentDescriptor> component = glean("NoAnnotationsIntf.java");
assertNull(component);
}
- public void testMyComponent() throws Exception {
+ @Test
+ void testMyComponent() throws Exception {
addSource("ChildComponent.java");
ComponentDescriptor> component = glean("MyComponent.java");
assertNotNull(component);
diff --git a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/merge/ComponentsXmlMergerTest.java b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/merge/ComponentsXmlMergerTest.java
index 97dcab21..b6fd5738 100644
--- a/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/merge/ComponentsXmlMergerTest.java
+++ b/plexus-component-metadata/src/test/java/org/codehaus/plexus/metadata/merge/ComponentsXmlMergerTest.java
@@ -24,43 +24,60 @@
* SOFTWARE.
*/
+import javax.inject.Inject;
+
import java.io.File;
import java.io.StringReader;
import java.util.List;
-import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.PlexusContainer;
import org.codehaus.plexus.metadata.merge.support.AbstractMergeableElement;
import org.codehaus.plexus.metadata.merge.support.AbstractMergeableElementList;
import org.codehaus.plexus.metadata.merge.support.ComponentElement;
import org.codehaus.plexus.metadata.merge.support.ComponentsElement;
import org.codehaus.plexus.metadata.merge.support.RequirementsElement;
+import org.codehaus.plexus.testing.PlexusTest;
import org.codehaus.plexus.util.FileUtils;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
/**
* Tests for {@link ComponentsXmlMerger}.
*
* @author Rahul Thakur
*/
-public class ComponentsXmlMergerTest extends PlexusTestCase {
- public void testBasic() throws Exception {
- ComponentsXmlMerger merger = (ComponentsXmlMerger) lookup(Merger.class, "componentsXml");
+@PlexusTest
+class ComponentsXmlMergerTest {
+
+ @Inject
+ PlexusContainer container;
+
+ @Test
+ void testBasic() throws Exception {
+ ComponentsXmlMerger merger = (ComponentsXmlMerger) container.lookup(Merger.class, "componentsXml");
assertNotNull(merger);
}
- public void testComponentsXmlFileMerge() throws Exception {
- File dominantXml = getTestFile("src/test/resources/org/codehaus/plexus/metadata/merge/dominant.xml");
- File recessiveXml = getTestFile("src/test/resources/org/codehaus/plexus/metadata/merge/recessive.xml");
+ @Test
+ void testComponentsXmlFileMerge() throws Exception {
+ File dominantXml = new File("src/test/resources/org/codehaus/plexus/metadata/merge/dominant.xml");
+ File recessiveXml = new File("src/test/resources/org/codehaus/plexus/metadata/merge/recessive.xml");
Document dDoc = new SAXBuilder().build(dominantXml);
Document rDoc = new SAXBuilder().build(recessiveXml);
// ComponentsXmlMerger merger = new ComponentsXmlMerger (dDoc);
- Merger merger = lookup(Merger.class, "componentsXml");
+ Merger merger = container.lookup(Merger.class, "componentsXml");
assertNotNull(merger);
merger.merge(dDoc, rDoc);
- File merged_xml = getTestFile("target/merged.xml");
+ File merged_xml = new File("target/merged.xml");
if (merged_xml.exists()) {
FileUtils.forceDelete(merged_xml);
}
@@ -69,26 +86,20 @@ public void testComponentsXmlFileMerge() throws Exception {
// read merged xml and verify it was merged as expected
Document mDoc = new SAXBuilder().build(merged_xml);
Element mRootElt = mDoc.getRootElement();
- assertTrue(mRootElt.getName().equals("component-set"));
+ assertEquals("component-set", mRootElt.getName());
assertEquals(1, mRootElt.getChildren("components").size());
- List componentEltList = mRootElt.getChild("components").getChildren("component");
+ List componentEltList = mRootElt.getChild("components").getChildren("component");
assertEquals(2, componentEltList.size());
- Element cElt = (Element) componentEltList.get(0);
+ Element cElt = componentEltList.get(0);
assertEquals("org.codehaus.plexus.metadata.component.IComponent", cElt.getChildTextTrim("role"));
assertEquals(
"org.codehaus.plexus.metadata.component.DominantComponent", cElt.getChildTextTrim("implementation"));
- assertEquals(
- "Should only have 1 description element.",
- 1,
- cElt.getChildren("description").size());
+ assertEquals(1, cElt.getChildren("description").size(), "Should only have 1 description element.");
assertEquals("Description for Dominant component", cElt.getChildTextTrim("description"));
- assertEquals(
- "Should only have 1 configuration element.",
- 1,
- cElt.getChildren("configuration").size());
+ assertEquals(1, cElt.getChildren("configuration").size(), "Should only have 1 configuration element.");
// assert Merged configuration properties
Element configurationElt = cElt.getChild("configuration");
assertNotNull(configurationElt);
@@ -109,7 +120,8 @@ public void testComponentsXmlFileMerge() throws Exception {
mRootElt.getChild("lifecycle-handler-manager").getAttributeValue("implementation"));
}
- public void testInvalidMergeableElements() throws Exception {
+ @Test
+ void testInvalidMergeableElements() throws Exception {
// dominant Component Element
AbstractMergeableElement dCE = new ComponentElement(new Element("component"));
Element roleElt = new Element("role");
@@ -131,7 +143,8 @@ public void testInvalidMergeableElements() throws Exception {
*
* @throws Exception if there was an unexpected error.
*/
- public void testComponentsMerge() throws Exception {
+ @Test
+ void testComponentsMerge() throws Exception {
// dominant Components Element
AbstractMergeableElement dParent = new ComponentsElement(new Element("components"));
Element dCE = new Element("component");
@@ -201,12 +214,9 @@ public void testComponentsMerge() throws Exception {
*
* @throws Exception in case of an error.
*/
- public void testDeepComponentsMerge() throws Exception {
- // FIXME: Review this after MergeStrategies are in place.
- if (true) {
- return;
- }
-
+ @Test
+ @Disabled("FIXME: Review this after MergeStrategies are in place.")
+ void testDeepComponentsMerge() throws Exception {
// dominant Component Element
AbstractMergeableElement dCE = new ComponentElement(new Element("component"));
Element roleElt = new Element("role");
@@ -256,23 +266,21 @@ public void testDeepComponentsMerge() throws Exception {
dCE.merge(rCE);
// verify the merge
- assertTrue(null != dCE.getChild("role"));
+ assertNotNull(dCE.getChild("role"));
assertEquals("org.codehaus.plexus.ISampleRole", dCE.getChildText("role"));
- assertTrue(null != dCE.getChild("role-hint"));
+ assertNotNull(dCE.getChild("role-hint"));
assertEquals("recessive-hint", dCE.getChildText("role-hint"));
- assertTrue(null != dCE.getChild("lifecycle-handler"));
+ assertNotNull(dCE.getChild("lifecycle-handler"));
assertEquals("plexus-configurable", dCE.getChildText("lifecycle-handler"));
- assertTrue(null != dCE.getChild("requirements"));
+ assertNotNull(dCE.getChild("requirements"));
assertEquals(1, dCE.getChild("requirements").getChildren("requirement").size());
assertEquals(
"recessive-required-role-hint",
- ((Element) dCE.getChild("requirements")
- .getChildren("requirement")
- .get(0))
- .getChildText("role-hint"));
+ dCE.getChild("requirements").getChildren("requirement").get(0).getChildText("role-hint"));
}
- public void testMergeRoleComponents() throws Exception {
+ @Test
+ void testMergeRoleComponents() throws Exception {
SAXBuilder saxBuilder = new SAXBuilder();
String source1 = "\n" + " \n"