From f0c73b438c5edecded362ca1a1fc75b947d4c949 Mon Sep 17 00:00:00 2001 From: Badrri Narayanan S Date: Sat, 21 Jan 2023 22:03:53 +0530 Subject: [PATCH] adds a test case for testing module location in file manager. --- .../impl/JctFileManagerImplTest.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/filemanagers/impl/JctFileManagerImplTest.java b/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/filemanagers/impl/JctFileManagerImplTest.java index 658d77774..1330fc488 100644 --- a/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/filemanagers/impl/JctFileManagerImplTest.java +++ b/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/filemanagers/impl/JctFileManagerImplTest.java @@ -23,7 +23,9 @@ import io.github.ascopes.jct.filemanagers.impl.JctFileManagerImpl; import io.github.ascopes.jct.workspaces.PathRoot; import java.nio.file.Path; +import java.nio.file.Paths; import javax.tools.JavaFileManager.Location; +import javax.tools.StandardLocation; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; @@ -76,4 +78,18 @@ void testAddPathForOutputLocation() { assertThat(jctFileManager.hasLocation(outputLocation)).isTrue(); } + @Test + @DisplayName("Tests addPath method for adding module location") + void testAddPathForModuleLocation() { + var moduleLocation = StandardLocation.locationFor(StandardLocation.MODULE_PATH.name()); + var pathRoot = mock(PathRoot.class); + var path = Paths.get(".").normalize().toAbsolutePath(); + + // we mock path because it is needed by AbstractPackageContainerGroup + given(pathRoot.getPath()).willReturn(path); + + JctFileManagerImpl jctFileManager = JctFileManagerImpl.forRelease("test"); + jctFileManager.addPath(moduleLocation, pathRoot); + assertThat(jctFileManager.hasLocation(moduleLocation)).isEqualTo(true); + } }