@NotNull public static CompilerConfiguration compilerConfigurationForTests( @NotNull ConfigurationKind configurationKind, @NotNull TestJdkKind jdkKind, @NotNull List<File> classpath, @NotNull List<File> javaSource) { CompilerConfiguration configuration = new CompilerConfiguration(); JvmContentRootsKt.addJavaSourceRoots(configuration, javaSource); if (jdkKind == TestJdkKind.MOCK_JDK) { JvmContentRootsKt.addJvmClasspathRoot(configuration, findMockJdkRtJar()); } else if (jdkKind == TestJdkKind.ANDROID_API) { JvmContentRootsKt.addJvmClasspathRoot(configuration, findAndroidApiJar()); } else { JvmContentRootsKt.addJvmClasspathRoots(configuration, PathUtil.getJdkClassesRoots()); } if (configurationKind.getWithRuntime()) { JvmContentRootsKt.addJvmClasspathRoot( configuration, ForTestCompileRuntime.runtimeJarForTests()); } if (configurationKind.getWithReflection()) { JvmContentRootsKt.addJvmClasspathRoot( configuration, ForTestCompileRuntime.reflectJarForTests()); } JvmContentRootsKt.addJvmClasspathRoots(configuration, classpath); configuration.put(MODULE_NAME, "compilerConfigurationForTests"); return configuration; }