From d67f6373a7fa5d9fc8711b664ca14ca42ea3c2ed Mon Sep 17 00:00:00 2001 From: Vincent Potucek Date: Sat, 7 Jun 2025 11:49:03 +0200 Subject: [PATCH] chore: ArtifactHandlerTest improve tests on packaging --- .../artifact/handler/ArtifactHandlerTest.java | 44 +++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/impl/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java b/impl/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java index a603b2429e51..3d7a08f97a02 100644 --- a/impl/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java +++ b/impl/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java @@ -29,16 +29,46 @@ import org.codehaus.plexus.testing.PlexusTest; import org.junit.jupiter.api.Test; +import static org.assertj.core.api.Assertions.assertThat; import static org.codehaus.plexus.testing.PlexusExtension.getTestFile; import static org.junit.jupiter.api.Assertions.assertEquals; @PlexusTest class ArtifactHandlerTest { + + private static final List PACKAGING_TYPES = List.of( + "aar", + "apk", + "bundle", + "ear", + "eclipse-plugin", + "eclipse-test-plugin", + "ejb", + "ejb-client", + "hpi", + "jar", + "java-source", + "javadoc", + "jpi", + "kar", + "lpkg", + "maven-archetype", + "maven-plugin", + "nar", + "par", + "pom", + "rar", + "sar", + "swc", + "swf", + "test-jar", + "war", + "zip"); + @Inject PlexusContainer container; @Test - @SuppressWarnings("checkstyle:UnusedLocalVariable") void testAptConsistency() throws Exception { File apt = getTestFile("src/site/apt/artifact-handlers.apt"); @@ -77,8 +107,16 @@ void testAptConsistency() throws Exception { ArtifactHandler handler = container.lookup(ArtifactHandlerManager.class).getArtifactHandler(type); assertEquals(handler.getExtension(), extension, type + " extension"); - // Packaging/Directory is Maven1 remnant!!! - // assertEquals(handler.getPackaging(), packaging, type + " packaging"); + assertThat(PACKAGING_TYPES).contains(handler.getPackaging(), packaging); + if (handler.getPackaging().equals("test-jar")) { + assertEquals("jar", packaging); + } else if (handler.getPackaging().equals("ejb-client")) { + assertEquals("ejb", packaging); + } else { + // Packaging/Directory is Maven1 remnant!!! + // TODO test with this assertion only + assertEquals(handler.getPackaging(), packaging, type + " packaging"); + } assertEquals(handler.getClassifier(), classifier, type + " classifier"); assertEquals(handler.getLanguage(), language, type + " language"); assertEquals(