Kapt: Get rid of the 'compiler-tests' dependency in 'plugins-tests'
(cherry picked from commit bb370f1)
This commit is contained in:
committed by
Yan Zhulanow
parent
a9de8ec89b
commit
9960e7f7cd
@@ -31,7 +31,6 @@
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module" module-name="java-model-wrappers" scope="TEST" />
|
||||
<orderEntry type="module" module-name="compiler-tests" scope="TEST" />
|
||||
<orderEntry type="module" module-name="light-classes" scope="TEST" />
|
||||
<orderEntry type="library" scope="TEST" name="junit-plugin" level="project" />
|
||||
<orderEntry type="module" module-name="annotation-processing" scope="TEST" />
|
||||
|
||||
+25
-2
@@ -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<Void, Void> {
|
||||
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<String, ModuleAndDependencies> modules, List<Void> 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<String, String> directives) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
+36
-2
@@ -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<Void, Void> {
|
||||
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<String, ModuleAndDependencies> modules, List<Void> 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<String, String> 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());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user