diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithJava.java b/compiler/tests-common/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithJava.java similarity index 100% rename from compiler/tests/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithJava.java rename to compiler/tests-common/org/jetbrains/kotlin/checkers/KotlinMultiFileTestWithJava.java diff --git a/plugins/plugins-tests/plugins-tests.iml b/plugins/plugins-tests/plugins-tests.iml index b4f442f1860..702ef77e34b 100755 --- a/plugins/plugins-tests/plugins-tests.iml +++ b/plugins/plugins-tests/plugins-tests.iml @@ -31,7 +31,6 @@ - diff --git a/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractJavaAnnotationProcessingTest.java b/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractJavaAnnotationProcessingTest.java index 42165b9c270..f35b45591d0 100755 --- a/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractJavaAnnotationProcessingTest.java +++ b/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractJavaAnnotationProcessingTest.java @@ -22,8 +22,10 @@ import com.intellij.psi.JavaPsiFacade; import com.intellij.psi.PsiClass; import com.intellij.psi.search.GlobalSearchScope; import junit.framework.TestCase; -import org.jetbrains.kotlin.asJava.AbstractCompilerLightClassTest; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.kotlin.checkers.KotlinMultiFileTestWithJava; import org.jetbrains.kotlin.cli.jvm.config.JavaSourceRoot; +import org.jetbrains.kotlin.test.ConfigurationKind; import org.jetbrains.kotlin.test.KotlinTestUtils; import java.io.File; @@ -34,9 +36,20 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; -public abstract class AbstractJavaAnnotationProcessingTest extends AbstractCompilerLightClassTest { +public abstract class AbstractJavaAnnotationProcessingTest extends KotlinMultiFileTestWithJava { private final static Pattern SUBJECT_FQ_NAME_PATTERN = Pattern.compile("^//\\s*(.*)$", Pattern.MULTILINE); + @NotNull + @Override + protected ConfigurationKind getConfigurationKind() { + return ConfigurationKind.ALL; + } + + @Override + protected boolean isKotlinSourceRootNeeded() { + return true; + } + @Override protected void doTest(String testDirPath) throws Exception { File testDir = new File(testDirPath); @@ -63,4 +76,14 @@ public abstract class AbstractJavaAnnotationProcessingTest extends AbstractCompi protected void doMultiFileTest(File testDataFile, Map modules, List files) throws IOException {} protected abstract void doTest(File testDataFile, PsiClass lightClass); + + @Override + protected Void createTestModule(@NotNull String name) { + return null; + } + + @Override + protected Void createTestFile(Void module, String fileName, String text, Map directives) { + return null; + } } \ No newline at end of file diff --git a/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractKotlinAnnotationProcessingTest.java b/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractKotlinAnnotationProcessingTest.java index 2a1108e87fe..b6ee77771d7 100755 --- a/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractKotlinAnnotationProcessingTest.java +++ b/plugins/plugins-tests/tests/org/jetbrains/kotlin/annotation/processing/test/wrappers/AbstractKotlinAnnotationProcessingTest.java @@ -19,7 +19,12 @@ package org.jetbrains.kotlin.annotation.processing.test.wrappers; import com.intellij.openapi.util.io.FileUtil; import com.intellij.psi.PsiClass; import com.intellij.psi.search.GlobalSearchScope; -import org.jetbrains.kotlin.asJava.AbstractCompilerLightClassTest; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.kotlin.asJava.finder.JavaElementFinder; +import org.jetbrains.kotlin.checkers.KotlinMultiFileTestWithJava; +import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment; +import org.jetbrains.kotlin.test.ConfigurationKind; +import org.jetbrains.kotlin.test.KotlinTestUtils; import org.jetbrains.kotlin.utils.ExceptionUtilsKt; import java.io.File; @@ -29,8 +34,19 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; -public abstract class AbstractKotlinAnnotationProcessingTest extends AbstractCompilerLightClassTest { +public abstract class AbstractKotlinAnnotationProcessingTest extends KotlinMultiFileTestWithJava { private final static Pattern SUBJECT_FQ_NAME_PATTERN = Pattern.compile("^//\\s*(.*)$", Pattern.MULTILINE); + + @NotNull + @Override + protected ConfigurationKind getConfigurationKind() { + return ConfigurationKind.ALL; + } + + @Override + protected boolean isKotlinSourceRootNeeded() { + return true; + } @Override protected void doMultiFileTest(File testDataFile, Map modules, List files) throws IOException { @@ -53,4 +69,22 @@ public abstract class AbstractKotlinAnnotationProcessingTest extends AbstractCom throw ExceptionUtilsKt.rethrow(e); } } + + @Override + protected Void createTestModule(@NotNull String name) { + return null; + } + + @Override + protected Void createTestFile(Void module, String fileName, String text, Map directives) { + return null; + } + + @NotNull + private static JavaElementFinder createFinder(@NotNull KotlinCoreEnvironment environment) throws IOException { + // We need to resolve all the files in order too fill in the trace that sits inside LightClassGenerationSupport + KotlinTestUtils.resolveAllKotlinFiles(environment); + + return JavaElementFinder.getInstance(environment.getProject()); + } }