From b0a4e812e5ab40da48a0b5e2083f9b2771b5fada Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Fri, 24 Apr 2015 21:02:09 +0300 Subject: [PATCH] Drop ConfigurationKind.JDK_AND_ANNOTATIONS, JetTestUtils.getJdkAnnotationsJar() --- .../tests/CodegenTestsOnAndroidGenerator.java | 4 +-- .../KotlinMultiFileTestWithWithJava.java | 8 +++--- .../kotlin/codegen/MethodOrderTest.kt | 8 +++--- .../AbstractBlackBoxCodegenTest.java | 2 +- .../jvm/compiler/AbstractLoadJavaTest.java | 5 ++-- .../AndroidSdkAnnotationsValidityTest.java | 3 +- .../compiler/JdkAnnotationsValidityTest.java | 3 +- ...solveDescriptorsFromExternalLibraries.java | 7 +++-- .../resolve/ExtensibleResolveTestCase.java | 2 +- .../jetbrains/kotlin/scripts/ScriptTest.java | 2 +- .../builtins/LoadBuiltinsTest.java | 2 +- .../jetbrains/kotlin/test/JetTestUtils.java | 28 ------------------- .../kotlin/idea/test/PluginTestCaseBase.java | 15 ++++++++-- 13 files changed, 37 insertions(+), 52 deletions(-) diff --git a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java index 7c9520d1180..6e9bb3542b6 100644 --- a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java +++ b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java @@ -146,9 +146,7 @@ public class CodegenTestsOnAndroidGenerator extends UsefulTestCase { JetTestUtils.createEnvironmentWithJdkAndNullabilityAnnotationsFromIdea( myTestRootDisposable, ConfigurationKind.ALL, TestJdkKind.FULL_JDK ) : - JetTestUtils.createEnvironmentWithMockJdkAndIdeaAnnotations( - myTestRootDisposable, ConfigurationKind.JDK_AND_ANNOTATIONS - ); + JetTestUtils.createEnvironmentWithMockJdkAndIdeaAnnotations(myTestRootDisposable); } public boolean shouldWriteFilesOnDisk() { diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithWithJava.java b/compiler/tests/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithWithJava.java index e82f9715028..9dffe8e5dfe 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithWithJava.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithWithJava.java @@ -33,7 +33,7 @@ import org.jetbrains.kotlin.utils.UtilsPackage; import java.io.File; import java.io.IOException; import java.nio.charset.Charset; -import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -77,10 +77,10 @@ public abstract class KotlinMultiFileTestWithWithJava extends JetLiteFixtu @NotNull protected CompilerConfiguration createCompilerConfiguration(File javaFilesDir) { return JetTestUtils.compilerConfigurationForTests( - ConfigurationKind.JDK_AND_ANNOTATIONS, + ConfigurationKind.JDK_ONLY, TestJdkKind.MOCK_JDK, - Arrays.asList(JetTestUtils.getAnnotationsJar()), - Arrays.asList(javaFilesDir) + Collections.singletonList(JetTestUtils.getAnnotationsJar()), + Collections.singletonList(javaFilesDir) ); } diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/MethodOrderTest.kt b/compiler/tests/org/jetbrains/kotlin/codegen/MethodOrderTest.kt index 2ba3f4f26ab..5dc931620f1 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/MethodOrderTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/codegen/MethodOrderTest.kt @@ -16,13 +16,13 @@ package org.jetbrains.kotlin.codegen -import org.jetbrains.kotlin.test.ConfigurationKind +import junit.framework.TestCase import org.jetbrains.asm4.ClassReader import org.jetbrains.asm4.ClassVisitor -import org.jetbrains.asm4.Opcodes import org.jetbrains.asm4.MethodVisitor +import org.jetbrains.asm4.Opcodes +import org.jetbrains.kotlin.test.ConfigurationKind import java.util.ArrayList -import junit.framework.TestCase public class MethodOrderTest: CodegenTestCase() { public fun testDelegatedMethod() { @@ -109,7 +109,7 @@ public class MethodOrderTest: CodegenTestCase() { } private fun doTest(sourceText: String, classSuffix: String, expectedOrder: List) { - createEnvironmentWithMockJdkAndIdeaAnnotations(ConfigurationKind.JDK_AND_ANNOTATIONS) + createEnvironmentWithMockJdkAndIdeaAnnotations(ConfigurationKind.JDK_ONLY) myFiles = CodegenTestFiles.create("file.kt", sourceText, myEnvironment!!.project) val classFileForObject = generateClassesInFile().asList().first { it.relativePath.endsWith("$classSuffix.class") } diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/generated/AbstractBlackBoxCodegenTest.java b/compiler/tests/org/jetbrains/kotlin/codegen/generated/AbstractBlackBoxCodegenTest.java index 46637c24c37..d5db4472796 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/generated/AbstractBlackBoxCodegenTest.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/generated/AbstractBlackBoxCodegenTest.java @@ -49,7 +49,7 @@ import static org.jetbrains.kotlin.load.kotlin.PackageClassUtils.getPackageClass public abstract class AbstractBlackBoxCodegenTest extends CodegenTestCase { public void doTest(@NotNull String filename) { - createEnvironmentWithMockJdkAndIdeaAnnotations(ConfigurationKind.JDK_AND_ANNOTATIONS); + createEnvironmentWithMockJdkAndIdeaAnnotations(ConfigurationKind.JDK_ONLY); blackBoxFileByFullPath(filename); } diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractLoadJavaTest.java b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractLoadJavaTest.java index 4aa8617f5c6..87d09c8e7e4 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractLoadJavaTest.java +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractLoadJavaTest.java @@ -93,7 +93,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir { } protected void doTestCompiledKotlin(@NotNull String ktFileName) throws Exception { - doTestCompiledKotlin(ktFileName, ConfigurationKind.JDK_AND_ANNOTATIONS); + doTestCompiledKotlin(ktFileName, ConfigurationKind.JDK_ONLY); } protected void doTestCompiledKotlinWithStdlib(@NotNull String ktFileName) throws Exception { @@ -236,7 +236,8 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir { }); JetTestUtils.createEnvironmentWithJdkAndNullabilityAnnotationsFromIdea( - getTestRootDisposable(), ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.MOCK_JDK); + getTestRootDisposable(), ConfigurationKind.JDK_ONLY, TestJdkKind.MOCK_JDK + ); Pair javaPackageAndContext = compileJavaAndLoadTestPackageAndBindingContextFromBinary( srcFiles, compiledDir, ConfigurationKind.ALL diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AndroidSdkAnnotationsValidityTest.java b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AndroidSdkAnnotationsValidityTest.java index bde2fbb4ad8..555b2681529 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AndroidSdkAnnotationsValidityTest.java +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AndroidSdkAnnotationsValidityTest.java @@ -39,7 +39,8 @@ public class AndroidSdkAnnotationsValidityTest extends AbstractSdkAnnotationsVal @Override protected KotlinCoreEnvironment createEnvironment(Disposable parentDisposable) { CompilerConfiguration configuration = JetTestUtils.compilerConfigurationForTests( - ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.ANDROID_API, JetTestUtils.getAnnotationsJar()); + ConfigurationKind.JDK_ONLY, TestJdkKind.ANDROID_API, JetTestUtils.getAnnotationsJar() + ); return KotlinCoreEnvironment.createForTests(parentDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES); } diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/JdkAnnotationsValidityTest.java b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/JdkAnnotationsValidityTest.java index 99ba0b31f5f..ca4fdd8ad9d 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/JdkAnnotationsValidityTest.java +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/JdkAnnotationsValidityTest.java @@ -69,7 +69,8 @@ public class JdkAnnotationsValidityTest extends AbstractSdkAnnotationsValidityTe private static KotlinCoreEnvironment createFullJdkEnvironment(Disposable parentDisposable) { CompilerConfiguration configuration = JetTestUtils.compilerConfigurationForTests( - ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.FULL_JDK, JetTestUtils.getAnnotationsJar()); + ConfigurationKind.JDK_ONLY, TestJdkKind.FULL_JDK, JetTestUtils.getAnnotationsJar() + ); configuration.add(JVMConfigurationKeys.ANNOTATIONS_PATH_KEY, new File("ideaSDK/lib/jdkAnnotations.jar")); return KotlinCoreEnvironment.createForTests(parentDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES); } diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java index e42a53bf0d9..b15c0757757 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/longTest/ResolveDescriptorsFromExternalLibraries.java @@ -165,13 +165,14 @@ public class ResolveDescriptorsFromExternalLibraries { if (jar != null) { jetCoreEnvironment = KotlinCoreEnvironment.createForTests( junk, - JetTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.MOCK_JDK, - JetTestUtils.getAnnotationsJar(), jar), + JetTestUtils.compilerConfigurationForTests( + ConfigurationKind.JDK_ONLY, TestJdkKind.MOCK_JDK, JetTestUtils.getAnnotationsJar(), jar + ), EnvironmentConfigFiles.JVM_CONFIG_FILES); } else { CompilerConfiguration configuration = - JetTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.FULL_JDK); + JetTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_ONLY, TestJdkKind.FULL_JDK); jetCoreEnvironment = KotlinCoreEnvironment.createForTests(junk, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES); if (!findRtJar().equals(jar)) { throw new RuntimeException("rt.jar mismatch: " + jar + ", " + findRtJar()); diff --git a/compiler/tests/org/jetbrains/kotlin/resolve/ExtensibleResolveTestCase.java b/compiler/tests/org/jetbrains/kotlin/resolve/ExtensibleResolveTestCase.java index ff60ddc1ac1..696b0279539 100644 --- a/compiler/tests/org/jetbrains/kotlin/resolve/ExtensibleResolveTestCase.java +++ b/compiler/tests/org/jetbrains/kotlin/resolve/ExtensibleResolveTestCase.java @@ -33,7 +33,7 @@ public abstract class ExtensibleResolveTestCase extends JetLiteFixture { @Override protected KotlinCoreEnvironment createEnvironment() { - return createEnvironmentWithMockJdk(ConfigurationKind.JDK_AND_ANNOTATIONS); + return createEnvironmentWithMockJdk(ConfigurationKind.JDK_ONLY); } @Override diff --git a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.java b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.java index fc125234e54..4a61b19fbd0 100644 --- a/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.java +++ b/compiler/tests/org/jetbrains/kotlin/scripts/ScriptTest.java @@ -83,7 +83,7 @@ public class ScriptTest { Disposable rootDisposable = Disposer.newDisposable(); try { CompilerConfiguration configuration = - JetTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.FULL_JDK); + JetTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_ONLY, TestJdkKind.FULL_JDK); configuration.put(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, messageCollector); addKotlinSourceRoot(configuration, "compiler/testData/script/" + scriptPath); configuration.addAll(CommonConfigurationKeys.SCRIPT_DEFINITIONS_KEY, scriptDefinitions); diff --git a/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java b/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java index 7f536255070..80d35e4705c 100644 --- a/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java +++ b/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java @@ -59,7 +59,7 @@ import static org.jetbrains.kotlin.builtins.KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_ public class LoadBuiltinsTest extends KotlinTestWithEnvironment { @Override protected KotlinCoreEnvironment createEnvironment() { - return createEnvironmentWithJdk(ConfigurationKind.JDK_AND_ANNOTATIONS, TestJdkKind.MOCK_JDK); + return createEnvironmentWithJdk(ConfigurationKind.JDK_ONLY, TestJdkKind.MOCK_JDK); } public void testBuiltIns() throws Exception { diff --git a/compiler/tests/org/jetbrains/kotlin/test/JetTestUtils.java b/compiler/tests/org/jetbrains/kotlin/test/JetTestUtils.java index a62bc63ba36..96db1c32eb5 100644 --- a/compiler/tests/org/jetbrains/kotlin/test/JetTestUtils.java +++ b/compiler/tests/org/jetbrains/kotlin/test/JetTestUtils.java @@ -92,7 +92,6 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import static org.jetbrains.kotlin.cli.jvm.config.ConfigPackage.*; -import static org.jetbrains.kotlin.cli.jvm.config.JVMConfigurationKeys.ANNOTATIONS_PATH_KEY; import static org.jetbrains.kotlin.cli.jvm.config.JVMConfigurationKeys.MODULE_NAME; import static org.jetbrains.kotlin.jvm.compiler.LoadDescriptorUtil.compileKotlinToDirAndGetAnalysisResult; import static org.jetbrains.kotlin.psi.PsiPackage.JetPsiFactory; @@ -337,24 +336,6 @@ public class JetTestUtils { return new File(getHomeDirectory(), "compiler/testData/mockJDK/jre/lib/annotations.jar"); } - @NotNull - public static File getJdkAnnotationsJar() { - File jdkAnnotations = new File(getHomeDirectory(), "dist/kotlinc/lib/kotlin-jdk-annotations.jar"); - if (!jdkAnnotations.exists()) { - throw new RuntimeException("Kotlin JDK annotations jar not found; please run 'ant dist' to build it"); - } - return jdkAnnotations; - } - - @NotNull - public static File getAndroidSdkAnnotationsJar() { - File androidSdkAnnotations = new File(getHomeDirectory(), "dist/kotlinc/lib/kotlin-android-sdk-annotations.jar"); - if (!androidSdkAnnotations.exists()) { - throw new RuntimeException("Kotlin Android SDK annotations jar not found; please run 'ant dist' to build it"); - } - return androidSdkAnnotations; - } - public static void mkdirs(File file) throws IOException { if (file.isDirectory()) { return; @@ -471,15 +452,6 @@ public class JetTestUtils { addJvmClasspathRoots(configuration, classpath); - if (configurationKind.getWithJdkAnnotations()) { - if (jdkKind == TestJdkKind.ANDROID_API) { - configuration.add(ANNOTATIONS_PATH_KEY, getAndroidSdkAnnotationsJar()); - } - else { - configuration.add(ANNOTATIONS_PATH_KEY, getJdkAnnotationsJar()); - } - } - configuration.put(MODULE_NAME, "compilerConfigurationForTests"); return configuration; diff --git a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/PluginTestCaseBase.java b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/PluginTestCaseBase.java index 99823c8eea8..966ed1b96ff 100644 --- a/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/PluginTestCaseBase.java +++ b/idea/idea-test-framework/src/org/jetbrains/kotlin/idea/test/PluginTestCaseBase.java @@ -41,27 +41,38 @@ public class PluginTestCaseBase { return JetTestUtils.getHomeDirectory() + TEST_DATA_PROJECT_RELATIVE; } + @NotNull private static Sdk getSdk(String sdkHome) { Sdk sdk = JavaSdk.getInstance().createJdk("JDK", sdkHome, true); SdkModificator modificator = sdk.getSdkModificator(); - JavaSdkImpl.attachJdkAnnotations(modificator); - VirtualFile file = LocalFileSystem.getInstance().findFileByIoFile(JetTestUtils.getJdkAnnotationsJar()); + VirtualFile file = LocalFileSystem.getInstance().findFileByIoFile(getJdkAnnotationsJar()); assert file != null; modificator.addRoot(JarFileSystem.getInstance().getJarRootForLocalFile(file), AnnotationOrderRootType.getInstance()); modificator.commitChanges(); return sdk; } + @NotNull public static Sdk mockJdk() { return getSdk("compiler/testData/mockJDK/jre"); } + @NotNull public static Sdk fullJdk() { String javaHome = System.getProperty("java.home"); assert new File(javaHome).isDirectory(); return getSdk(javaHome); } + @NotNull + public static File getJdkAnnotationsJar() { + File jdkAnnotations = new File(JetTestUtils.getHomeDirectory(), "dist/kotlinc/lib/kotlin-jdk-annotations.jar"); + if (!jdkAnnotations.exists()) { + throw new RuntimeException("Kotlin JDK annotations jar not found; please run 'ant dist' to build it"); + } + return jdkAnnotations; + } + public static boolean isAllFilesPresentTest(@NotNull String testName) { return StringUtil.startsWithIgnoreCase(testName, "allFilesPresentIn"); }