Move Util.getClassPath() 33/104633/1
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 28 Feb 2023 23:27:39 +0000 (00:27 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 28 Feb 2023 23:27:39 +0000 (00:27 +0100)
Rehost this utility method to its sole caller.

Change-Id: I51826631db782a5e85c37f6b776caa93e97a485f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/ScannedDependency.java
plugin/yang-maven-plugin/src/main/java/org/opendaylight/yangtools/yang2sources/plugin/Util.java
plugin/yang-maven-plugin/src/test/java/org/opendaylight/yangtools/yang2sources/plugin/ScannedDependencyTest.java
plugin/yang-maven-plugin/src/test/java/org/opendaylight/yangtools/yang2sources/plugin/UtilTest.java

index 59a937e773c7cc234381784d988b61d319af5016..d86df7d114acc72a4db4c3f3eeedee71339aba32 100644 (file)
@@ -12,6 +12,7 @@ import static org.opendaylight.yangtools.yang.common.YangConstants.RFC6020_YANG_
 import static org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.META_INF_YANG_STRING;
 import static org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.META_INF_YANG_STRING_JAR;
 
+import com.google.common.annotations.VisibleForTesting;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.io.ByteSource;
@@ -23,6 +24,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.project.MavenProject;
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource;
@@ -77,7 +79,7 @@ abstract class ScannedDependency {
     }
 
     static List<ScannedDependency> scanDependencies(final MavenProject project) throws IOException {
-        final List<File> filesOnCp = Util.getClassPath(project);
+        final List<File> filesOnCp = getClassPath(project);
         LOG.debug("{} Searching for YANG files in dependencies: {}", YangToSourcesProcessor.LOG_PREFIX, filesOnCp);
         LOG.debug("{} Searching for YANG files in {} dependencies", YangToSourcesProcessor.LOG_PREFIX,
             filesOnCp.size());
@@ -126,4 +128,12 @@ abstract class ScannedDependency {
     }
 
     abstract ImmutableList<YangTextSchemaSource> sources() throws IOException;
+
+    @VisibleForTesting
+    static List<File> getClassPath(final MavenProject project) {
+        return project.getArtifacts().stream()
+            .map(Artifact::getFile)
+            .filter(file -> file.isFile() && file.getName().endsWith(".jar") || file.isDirectory())
+            .toList();
+    }
 }
index 64a999f39217be06a6e61f8ec8af46aa8304819d..15855c7515918d2cc0d87ac2d2cc17f2e707c979 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang2sources.plugin;
 
 import static org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.LOG_PREFIX;
 
-import java.io.File;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -38,13 +37,6 @@ final class Util {
         return new SourceIdentifier(Unqualified.of(module.getName()), module.getRevision().orElse(null));
     }
 
-    static List<File> getClassPath(final MavenProject project) {
-        return project.getArtifacts().stream()
-            .map(Artifact::getFile)
-            .filter(file -> file.isFile() && file.getName().endsWith(".jar") || file.isDirectory())
-            .toList();
-    }
-
     /**
      * Read current project dependencies and check if it don't grab incorrect
      * artifacts versions which could be in conflict with plugin dependencies.
index fc33f06cc87794129099baae079d375380f86e95..5702e08b8c666fce430a00e95d7c7650847bf15a 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.yangtools.yang2sources.plugin;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 
@@ -19,6 +20,8 @@ import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.util.Collection;
+import java.util.List;
+import java.util.Set;
 import java.util.jar.Attributes;
 import java.util.jar.JarEntry;
 import java.util.jar.JarOutputStream;
@@ -28,6 +31,25 @@ import org.apache.maven.project.MavenProject;
 import org.junit.Test;
 
 public class ScannedDependencyTest {
+    @Test
+    public void getClassPathTest() {
+        final MavenProject project = mock(MavenProject.class);
+        final File file = mock(File.class);
+        final File file2 = mock(File.class);
+        final Artifact artifact = mock(Artifact.class);
+        final Artifact artifact2 = mock(Artifact.class);
+
+        doReturn(Set.of(artifact, artifact2)).when(project).getArtifacts();
+        doReturn(file).when(artifact).getFile();
+        doReturn(true).when(file).isFile();
+        doReturn("iamjar.jar").when(file).getName();
+        doReturn(file2).when(artifact2).getFile();
+        doReturn(true).when(file2).isDirectory();
+
+        final List<File> files = ScannedDependency.getClassPath(project);
+        assertEquals(2, files.size());
+        assertTrue(files.contains(file) && files.contains(file2));
+    }
 
     @Test
     public void findYangFilesInDependenciesAsStream() throws Exception {
index 3bd0acf81c995194dae60940f4a6461c2dd0cc4e..0f93da1993af5d6d8cf7c7eef00748a1530a2130 100644 (file)
@@ -8,14 +8,12 @@
 package org.opendaylight.yangtools.yang2sources.plugin;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 
 import com.google.common.collect.ImmutableSet;
-import java.io.File;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
@@ -37,31 +35,6 @@ import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils;
 
 @RunWith(MockitoJUnitRunner.StrictStubs.class)
 public class UtilTest {
-
-    @Test
-    public void getClassPathTest() {
-        final MavenProject project = mock(MavenProject.class);
-        final File file = mock(File.class);
-        final File file2 = mock(File.class);
-        final Artifact artifact = mock(Artifact.class);
-        final Artifact artifact2 = mock(Artifact.class);
-
-        final Set<Artifact> artifacts = new HashSet<>();
-        artifacts.add(artifact);
-        artifacts.add(artifact2);
-
-        doReturn(artifacts).when(project).getArtifacts();
-        doReturn(file).when(artifact).getFile();
-        doReturn(true).when(file).isFile();
-        doReturn("iamjar.jar").when(file).getName();
-        doReturn(file2).when(artifact2).getFile();
-        doReturn(true).when(file2).isDirectory();
-
-        final List<File> files = Util.getClassPath(project);
-        assertEquals(2, files.size());
-        assertTrue(files.contains(file) && files.contains(file2));
-    }
-
     @Test
     public void checkClasspathTest() throws Exception {
         final MavenProject project = mock(MavenProject.class);