From e948235bd1d844e44a3e9b827b5b6ae8f39afe53 Mon Sep 17 00:00:00 2001 From: TheRealHaui Date: Wed, 19 Nov 2025 21:33:04 +0100 Subject: [PATCH 1/3] Add new Unit Tests --- .../org/apache/maven/RepositoryUtilsTest.java | 37 +++++++++++++++++ .../maven/project/MavenProjectTest.java | 40 +++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java diff --git a/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java b/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java new file mode 100644 index 000000000000..2339b25788a1 --- /dev/null +++ b/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java @@ -0,0 +1,37 @@ +/* + * 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. + */ +package org.apache.maven; + +import org.apache.maven.artifact.Artifact; +import org.eclipse.aether.graph.Dependency; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertNull; + + +class RepositoryUtilsTest { + + @Test + void testToArtifactMethodsReturnNullWhenInputParameterIsNull() { + assertNull(RepositoryUtils.toArtifact( (Dependency) null)); + assertNull(RepositoryUtils.toArtifact( (Artifact) null)); + assertNull(RepositoryUtils.toArtifact( (org.apache.maven.artifact.Artifact) null)); + } + +} \ No newline at end of file diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java b/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java index 67af48b50282..5c7c1afc5f54 100644 --- a/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java +++ b/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java @@ -20,9 +20,16 @@ import java.io.File; import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.PathMatcher; +import java.util.Collection; import java.util.List; import java.util.Map; +import org.apache.maven.api.Language; +import org.apache.maven.api.ProjectScope; +import org.apache.maven.api.SourceRoot; +import org.apache.maven.impl.DefaultSourceRoot; import org.apache.maven.model.DependencyManagement; import org.apache.maven.model.Model; import org.apache.maven.model.Parent; @@ -212,6 +219,39 @@ void testAddDotFile() { assertEquals(1, project.getCompileSourceRoots().size()); } + @Test + void testRemoveSourceRoot() { + MavenProject project = new MavenProject(); + + File basedir = new File(System.getProperty("java.io.tmpdir")); + project.setFile(new File(basedir, "file")); + + assertEquals(0, project.getSourceRoots().size()); + + project.addSourceRoot(new DefaultSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, Path.of(basedir.getAbsolutePath(),"src/main/java"))); + + assertEquals(1, project.getSourceRoots().size()); + + //Try remove + //different directory + project.removeSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, "src/test/java"); + + assertEquals(1, project.getSourceRoots().size()); + + //Try remove + //different scope + project.removeSourceRoot(ProjectScope.TEST, Language.JAVA_FAMILY, "src/main/java"); + + assertEquals(1, project.getSourceRoots().size()); + + //Remove previously + //added root + project.removeSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, "src/main/java"); + + assertEquals(0, project.getSourceRoots().size()); + + } + private void assertNoNulls(List elements) { assertFalse(elements.contains(null), "Expected " + elements + " to not contain " + null); } From fff9f77e96a01cbc83cf0d0c14242ad6be5d594d Mon Sep 17 00:00:00 2001 From: TheRealHaui Date: Wed, 26 Nov 2025 12:49:19 +0100 Subject: [PATCH 2/3] Change internal code comments --- .../java/org/apache/maven/project/MavenProjectTest.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java b/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java index 5c7c1afc5f54..babd8f4ea963 100644 --- a/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java +++ b/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java @@ -232,20 +232,17 @@ void testRemoveSourceRoot() { assertEquals(1, project.getSourceRoots().size()); - //Try remove - //different directory + //Try to remove a different directory project.removeSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, "src/test/java"); assertEquals(1, project.getSourceRoots().size()); - //Try remove - //different scope + //Try to remove a different scope project.removeSourceRoot(ProjectScope.TEST, Language.JAVA_FAMILY, "src/main/java"); assertEquals(1, project.getSourceRoots().size()); - //Remove previously - //added root + //Remove previously added root project.removeSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, "src/main/java"); assertEquals(0, project.getSourceRoots().size()); From 71bad98216268ef53349f98f725a54fdff8d5a48 Mon Sep 17 00:00:00 2001 From: TheRealHaui Date: Wed, 26 Nov 2025 16:31:07 +0100 Subject: [PATCH 3/3] Reformatted changed classes using spotless --- .../java/org/apache/maven/RepositoryUtilsTest.java | 10 ++++------ .../org/apache/maven/project/MavenProjectTest.java | 13 +++++-------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java b/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java index 2339b25788a1..fdfe1b1ee275 100644 --- a/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java +++ b/impl/maven-core/src/test/java/org/apache/maven/RepositoryUtilsTest.java @@ -24,14 +24,12 @@ import static org.junit.jupiter.api.Assertions.assertNull; - class RepositoryUtilsTest { @Test void testToArtifactMethodsReturnNullWhenInputParameterIsNull() { - assertNull(RepositoryUtils.toArtifact( (Dependency) null)); - assertNull(RepositoryUtils.toArtifact( (Artifact) null)); - assertNull(RepositoryUtils.toArtifact( (org.apache.maven.artifact.Artifact) null)); + assertNull(RepositoryUtils.toArtifact((Dependency) null)); + assertNull(RepositoryUtils.toArtifact((Artifact) null)); + assertNull(RepositoryUtils.toArtifact((org.apache.maven.artifact.Artifact) null)); } - -} \ No newline at end of file +} diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java b/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java index babd8f4ea963..63ac9d3da940 100644 --- a/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java +++ b/impl/maven-core/src/test/java/org/apache/maven/project/MavenProjectTest.java @@ -21,14 +21,11 @@ import java.io.File; import java.io.IOException; import java.nio.file.Path; -import java.nio.file.PathMatcher; -import java.util.Collection; import java.util.List; import java.util.Map; import org.apache.maven.api.Language; import org.apache.maven.api.ProjectScope; -import org.apache.maven.api.SourceRoot; import org.apache.maven.impl.DefaultSourceRoot; import org.apache.maven.model.DependencyManagement; import org.apache.maven.model.Model; @@ -228,25 +225,25 @@ void testRemoveSourceRoot() { assertEquals(0, project.getSourceRoots().size()); - project.addSourceRoot(new DefaultSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, Path.of(basedir.getAbsolutePath(),"src/main/java"))); + project.addSourceRoot(new DefaultSourceRoot( + ProjectScope.MAIN, Language.JAVA_FAMILY, Path.of(basedir.getAbsolutePath(), "src/main/java"))); assertEquals(1, project.getSourceRoots().size()); - //Try to remove a different directory + // Try to remove a different directory project.removeSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, "src/test/java"); assertEquals(1, project.getSourceRoots().size()); - //Try to remove a different scope + // Try to remove a different scope project.removeSourceRoot(ProjectScope.TEST, Language.JAVA_FAMILY, "src/main/java"); assertEquals(1, project.getSourceRoots().size()); - //Remove previously added root + // Remove previously added root project.removeSourceRoot(ProjectScope.MAIN, Language.JAVA_FAMILY, "src/main/java"); assertEquals(0, project.getSourceRoots().size()); - } private void assertNoNulls(List elements) {