Add kotlin.test library to build distribution and provide for tests
This commit is contained in:
@@ -36,6 +36,11 @@ public class ForTestCompileRuntime {
|
||||
return assertExists(new File("dist/kotlinc/lib/kotlin-runtime.jar"));
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static File kotlinTestJarForTests() {
|
||||
return assertExists(new File("dist/kotlinc/lib/kotlin-test.jar"));
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static File reflectJarForTests() {
|
||||
return assertExists(new File("dist/kotlinc/lib/kotlin-reflect.jar"));
|
||||
|
||||
@@ -446,6 +446,7 @@ public class KotlinTestUtils {
|
||||
|
||||
if (configurationKind.getWithRuntime()) {
|
||||
JvmContentRootsKt.addJvmClasspathRoot(configuration, ForTestCompileRuntime.runtimeJarForTests());
|
||||
JvmContentRootsKt.addJvmClasspathRoot(configuration, ForTestCompileRuntime.kotlinTestJarForTests());
|
||||
}
|
||||
if (configurationKind.getWithReflection()) {
|
||||
JvmContentRootsKt.addJvmClasspathRoot(configuration, ForTestCompileRuntime.reflectJarForTests());
|
||||
|
||||
@@ -33,6 +33,9 @@ public interface KotlinPaths {
|
||||
@NotNull
|
||||
File getReflectPath();
|
||||
|
||||
@NotNull
|
||||
File getKotlinTestPath();
|
||||
|
||||
@NotNull
|
||||
File getRuntimeSourcesPath();
|
||||
|
||||
|
||||
@@ -52,6 +52,12 @@ public class KotlinPathsFromHomeDir implements KotlinPaths {
|
||||
return getLibraryFile(PathUtil.KOTLIN_JAVA_REFLECT_JAR);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public File getKotlinTestPath() {
|
||||
return getLibraryFile(PathUtil.KOTLIN_TEST_JAR);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public File getRuntimeSourcesPath() {
|
||||
|
||||
@@ -34,6 +34,7 @@ public class PathUtil {
|
||||
public static final String ANDROID_SDK_ANNOTATIONS_JAR = "kotlin-android-sdk-annotations.jar";
|
||||
public static final String KOTLIN_JAVA_RUNTIME_JAR = "kotlin-runtime.jar";
|
||||
public static final String KOTLIN_JAVA_REFLECT_JAR = "kotlin-reflect.jar";
|
||||
public static final String KOTLIN_TEST_JAR = "kotlin-test.jar";
|
||||
public static final String KOTLIN_JAVA_RUNTIME_SRC_JAR = "kotlin-runtime-sources.jar";
|
||||
public static final String KOTLIN_COMPILER_JAR = "kotlin-compiler.jar";
|
||||
|
||||
|
||||
@@ -41,6 +41,7 @@ import java.util.List;
|
||||
*/
|
||||
public class ConfigLibraryUtil {
|
||||
private static final String DEFAULT_JAVA_RUNTIME_LIB_NAME = "JAVA_RUNTIME_LIB_NAME";
|
||||
private static final String DEFAULT_KOTLIN_TEST_LIB_NAME = "KOTLIN_TEST_LIB_NAME";
|
||||
private static final String DEFAULT_KOTLIN_JS_STDLIB_NAME = "KOTLIN_JS_STDLIB_NAME";
|
||||
|
||||
private ConfigLibraryUtil() {
|
||||
@@ -67,6 +68,8 @@ public class ConfigLibraryUtil {
|
||||
public static void configureKotlinRuntime(Module module) {
|
||||
addLibrary(getKotlinRuntimeLibEditor(DEFAULT_JAVA_RUNTIME_LIB_NAME, PathUtil.getKotlinPathsForDistDirectory().getRuntimePath()),
|
||||
module);
|
||||
addLibrary(getKotlinRuntimeLibEditor(DEFAULT_KOTLIN_TEST_LIB_NAME, PathUtil.getKotlinPathsForDistDirectory().getKotlinTestPath()),
|
||||
module);
|
||||
}
|
||||
|
||||
public static void configureKotlinJsRuntime(Module module) {
|
||||
@@ -76,6 +79,7 @@ public class ConfigLibraryUtil {
|
||||
|
||||
public static void unConfigureKotlinRuntime(Module module) {
|
||||
removeLibrary(module, DEFAULT_JAVA_RUNTIME_LIB_NAME);
|
||||
removeLibrary(module, DEFAULT_KOTLIN_TEST_LIB_NAME);
|
||||
}
|
||||
|
||||
public static void unConfigureKotlinRuntimeAndSdk(Module module, Sdk sdk) {
|
||||
|
||||
@@ -500,6 +500,7 @@ public abstract class AbstractIncrementalJpsTest(
|
||||
moduleNames = nameToModule.keySet()
|
||||
}
|
||||
AbstractKotlinJpsBuildTestCase.addKotlinRuntimeDependency(myProject)
|
||||
AbstractKotlinJpsBuildTestCase.addKotlinTestRuntimeDependency(myProject)
|
||||
return moduleNames
|
||||
}
|
||||
|
||||
|
||||
@@ -91,6 +91,10 @@ public abstract class AbstractKotlinJpsBuildTestCase extends JpsBuildTestCase {
|
||||
return addKotlinRuntimeDependency(JpsJavaDependencyScope.COMPILE, project.getModules(), false);
|
||||
}
|
||||
|
||||
static JpsLibrary addKotlinTestRuntimeDependency(@NotNull JpsProject project) {
|
||||
return addDependency(JpsJavaDependencyScope.COMPILE, project.getModules(), false, "kotlin-test", PathUtil.getKotlinPathsForDistDirectory().getKotlinTestPath());
|
||||
}
|
||||
|
||||
static JpsLibrary addKotlinJavaScriptStdlibDependency(@NotNull JpsProject project) {
|
||||
return addKotlinJavaScriptStdlibDependency(JpsJavaDependencyScope.COMPILE, project.getModules(), false);
|
||||
}
|
||||
|
||||
@@ -18,5 +18,7 @@ manifest.impl.title.kotlin.preloader=Kotlin Preloader
|
||||
|
||||
manifest.impl.title.kotlin.runner=Kotlin Runner
|
||||
|
||||
manifest.impl.title.kotlin.test=Kotlin Reflect Sources
|
||||
|
||||
manifest.impl.title.kotlin.jdk.annotations=Kotlin Compiler JDK Annotations
|
||||
manifest.impl.title.kotlin.android.sdk.annotations=Kotlin Compiler Android SDK Annotations
|
||||
|
||||
Reference in New Issue
Block a user