diff --git a/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/AbstractKotlinJpsBuildTestCase.kt b/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/AbstractKotlinJpsBuildTestCase.kt index 04f1d587264..05cd0ae62ab 100644 --- a/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/AbstractKotlinJpsBuildTestCase.kt +++ b/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/AbstractKotlinJpsBuildTestCase.kt @@ -51,15 +51,19 @@ abstract class AbstractKotlinJpsBuildTestCase : BaseKotlinJpsBuildTestCase() { } protected fun addKotlinMockRuntimeDependency(): JpsLibrary { - return addDependency("kotlin-mock-runtime", ForTestCompileRuntime.minimalRuntimeJarForTests()) + return addDependency(KotlinJpsLibrary.MockRuntime) } protected fun addKotlinStdlibDependency(): JpsLibrary { - return addKotlinStdlibDependency(myProject) + return addDependency(KotlinJpsLibrary.JvmStdLib) } protected fun addKotlinJavaScriptStdlibDependency(): JpsLibrary { - return addDependency("KotlinJavaScript", PathUtil.kotlinPathsForDistDirectory.jsStdLibJarPath) + return addDependency(KotlinJpsLibrary.JsStdLib) + } + + private fun addDependency(library: KotlinJpsLibrary): JpsLibrary { + return addDependency(myProject, library) } protected fun addDependency(libraryName: String, libraryFile: File): JpsLibrary { @@ -79,20 +83,18 @@ abstract class AbstractKotlinJpsBuildTestCase : BaseKotlinJpsBuildTestCase() { } @JvmStatic - internal fun addKotlinStdlibDependency(project: JpsProject): JpsLibrary { - return addKotlinStdlibDependency(project.modules, false) + protected fun addKotlinStdlibDependency(modules: Collection, exported: Boolean = false): JpsLibrary { + return addDependency(modules, KotlinJpsLibrary.JvmStdLib, exported) } @JvmStatic - protected fun addKotlinStdlibDependency(modules: Collection, exported: Boolean): JpsLibrary { - return addDependency( - JpsJavaDependencyScope.COMPILE, - modules, - exported, - "kotlin-stdlib", - PathUtil.kotlinPathsForDistDirectory.stdlibPath, - File(PathUtil.kotlinPathsForDistDirectory.libPath, "annotations-13.0.jar") - ) + private fun addDependency(project: JpsProject, library: KotlinJpsLibrary, exported: Boolean = false): JpsLibrary { + return addDependency(JpsJavaDependencyScope.COMPILE, project.modules, exported, library.id, *library.roots) + } + + @JvmStatic + private fun addDependency(modules: Collection, library: KotlinJpsLibrary, exported: Boolean = false): JpsLibrary { + return addDependency(JpsJavaDependencyScope.COMPILE, modules, exported, library.id, *library.roots) } @JvmStatic diff --git a/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/KotlinLibraries.kt b/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/KotlinLibraries.kt index a6083c687f9..e89c8ef1590 100644 --- a/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/KotlinLibraries.kt +++ b/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/KotlinLibraries.kt @@ -13,18 +13,30 @@ import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime import org.jetbrains.kotlin.utils.PathUtil import java.io.File -enum class KotlinJpsLibrary(val id: String, private vararg val roots: File) { - MockRuntime("kotlin-mock-runtime", ForTestCompileRuntime.minimalRuntimeJarForTests()), +enum class KotlinJpsLibrary(val id: String, vararg val roots: File) { + MockRuntime( + "kotlin-mock-runtime", + ForTestCompileRuntime.minimalRuntimeJarForTests() + ), JvmStdLib( "kotlin-stdlib", PathUtil.kotlinPathsForDistDirectory.stdlibPath, File(PathUtil.kotlinPathsForDistDirectory.libPath, "annotations-13.0.jar") ), - JvmTest("kotlin-test", PathUtil.kotlinPathsForDistDirectory.kotlinTestPath), + JvmTest( + "kotlin-test", + PathUtil.kotlinPathsForDistDirectory.kotlinTestPath + ), - JsStdLib("KotlinJavaScript", PathUtil.kotlinPathsForDistDirectory.jsStdLibJarPath), - JsTest("KotlinJavaScriptTest", PathUtil.kotlinPathsForDistDirectory.jsKotlinTestJarPath); + JsStdLib( + "KotlinJavaScript", + PathUtil.kotlinPathsForDistDirectory.jsStdLibJarPath + ), + JsTest( + "KotlinJavaScriptTest", + PathUtil.kotlinPathsForDistDirectory.jsKotlinTestJarPath + ); fun create(project: JpsProject): JpsLibrary { val library = project.addLibrary(id, JpsJavaLibraryType.INSTANCE)