Add kotlin.test library to build distribution and provide for tests

This commit is contained in:
Sergey Mashkov
2015-11-24 16:01:52 +03:00
parent 7aae2bd452
commit b57d2ff702
9 changed files with 27 additions and 0 deletions
@@ -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);
}
+2
View File
@@ -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