Introduce configureEnvironment, avoid 'createEnvironment' calls
This commit is contained in:
@@ -91,7 +91,7 @@ abstract class BaseDiagnosticsTest : KotlinMultiFileTestWithJava<TestModule, Tes
|
|||||||
files: List<TestFile>
|
files: List<TestFile>
|
||||||
) {
|
) {
|
||||||
environment = createEnvironment(wholeFile)
|
environment = createEnvironment(wholeFile)
|
||||||
|
setupEnvironment(environment)
|
||||||
analyzeAndCheck(wholeFile, files)
|
analyzeAndCheck(wholeFile, files)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
@@ -93,6 +93,10 @@ public abstract class KotlinMultiFileTestWithJava<M extends KotlinBaseTest.TestM
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void setupEnvironment(@NotNull KotlinCoreEnvironment environment) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
protected ConfigurationKind getConfigurationKind() {
|
protected ConfigurationKind getConfigurationKind() {
|
||||||
return ConfigurationKind.JDK_ONLY;
|
return ConfigurationKind.JDK_ONLY;
|
||||||
|
|||||||
+4
-6
@@ -54,12 +54,10 @@ abstract class AbstractFirBaseDiagnosticsTest : BaseDiagnosticsTest() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun createEnvironment(file: File): KotlinCoreEnvironment {
|
override fun setupEnvironment(environment: KotlinCoreEnvironment) {
|
||||||
return super.createEnvironment(file).apply {
|
Extensions.getArea(environment.project)
|
||||||
Extensions.getArea(this.project)
|
.getExtensionPoint(PsiElementFinder.EP_NAME)
|
||||||
.getExtensionPoint(PsiElementFinder.EP_NAME)
|
.unregisterExtension(JavaElementFinder::class.java)
|
||||||
.unregisterExtension(JavaElementFinder::class.java)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
open fun analyzeAndCheckUnhandled(testDataFile: File, files: List<TestFile>, useLightTree: Boolean = false) {
|
open fun analyzeAndCheckUnhandled(testDataFile: File, files: List<TestFile>, useLightTree: Boolean = false) {
|
||||||
|
|||||||
+4
-4
@@ -6,15 +6,15 @@
|
|||||||
package org.jetbrains.kotlinx.serialization
|
package org.jetbrains.kotlinx.serialization
|
||||||
|
|
||||||
import org.jetbrains.kotlin.checkers.AbstractDiagnosticsTest
|
import org.jetbrains.kotlin.checkers.AbstractDiagnosticsTest
|
||||||
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot
|
import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot
|
||||||
import org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegistrar
|
import org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegistrar
|
||||||
import java.io.File
|
|
||||||
|
|
||||||
abstract class AbstractSerializationPluginDiagnosticTest : AbstractDiagnosticsTest() {
|
abstract class AbstractSerializationPluginDiagnosticTest : AbstractDiagnosticsTest() {
|
||||||
private val runtimeLibraryPath = getSerializationLibraryRuntimeJar()
|
private val runtimeLibraryPath = getSerializationLibraryRuntimeJar()
|
||||||
|
|
||||||
override fun createEnvironment(file: File) = super.createEnvironment(file).apply {
|
override fun setupEnvironment(environment: KotlinCoreEnvironment) {
|
||||||
SerializationComponentRegistrar.registerExtensions(this.project)
|
SerializationComponentRegistrar.registerExtensions(environment.project)
|
||||||
updateClasspath(listOf(JvmClasspathRoot(runtimeLibraryPath!!)))
|
environment.updateClasspath(listOf(JvmClasspathRoot(runtimeLibraryPath!!)))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-7
@@ -17,27 +17,24 @@
|
|||||||
package org.jetbrains.kotlin.samWithReceiver
|
package org.jetbrains.kotlin.samWithReceiver
|
||||||
|
|
||||||
import org.jetbrains.kotlin.checkers.AbstractDiagnosticsTest
|
import org.jetbrains.kotlin.checkers.AbstractDiagnosticsTest
|
||||||
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.extensions.StorageComponentContainerContributor
|
import org.jetbrains.kotlin.extensions.StorageComponentContainerContributor
|
||||||
import org.jetbrains.kotlin.scripting.configuration.ScriptingConfigurationKeys
|
import org.jetbrains.kotlin.scripting.configuration.ScriptingConfigurationKeys
|
||||||
import org.jetbrains.kotlin.scripting.definitions.ScriptDefinition
|
import org.jetbrains.kotlin.scripting.definitions.ScriptDefinition
|
||||||
import org.jetbrains.kotlin.scripting.resolve.KotlinScriptDefinitionFromAnnotatedTemplate
|
import org.jetbrains.kotlin.scripting.resolve.KotlinScriptDefinitionFromAnnotatedTemplate
|
||||||
import java.io.File
|
|
||||||
import kotlin.script.experimental.jvm.defaultJvmScriptingHostConfiguration
|
import kotlin.script.experimental.jvm.defaultJvmScriptingHostConfiguration
|
||||||
import kotlin.script.extensions.SamWithReceiverAnnotations
|
import kotlin.script.extensions.SamWithReceiverAnnotations
|
||||||
import kotlin.script.templates.ScriptTemplateDefinition
|
import kotlin.script.templates.ScriptTemplateDefinition
|
||||||
|
|
||||||
abstract class AbstractSamWithReceiverScriptTest : AbstractDiagnosticsTest() {
|
abstract class AbstractSamWithReceiverScriptTest : AbstractDiagnosticsTest() {
|
||||||
private companion object {
|
|
||||||
private val TEST_ANNOTATIONS = emptyList<String>()
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createEnvironment(file: File) = super.createEnvironment(file).apply {
|
override fun setupEnvironment(environment: KotlinCoreEnvironment) {
|
||||||
StorageComponentContainerContributor.registerExtension(project, CliSamWithReceiverComponentContributor(TEST_ANNOTATIONS))
|
StorageComponentContainerContributor.registerExtension(environment.project, CliSamWithReceiverComponentContributor(emptyList()))
|
||||||
val def = ScriptDefinition.FromLegacy(
|
val def = ScriptDefinition.FromLegacy(
|
||||||
defaultJvmScriptingHostConfiguration,
|
defaultJvmScriptingHostConfiguration,
|
||||||
KotlinScriptDefinitionFromAnnotatedTemplate(ScriptForSamWithReceivers::class, emptyMap())
|
KotlinScriptDefinitionFromAnnotatedTemplate(ScriptForSamWithReceivers::class, emptyMap())
|
||||||
)
|
)
|
||||||
configuration.add(ScriptingConfigurationKeys.SCRIPT_DEFINITIONS, def)
|
environment.configuration.add(ScriptingConfigurationKeys.SCRIPT_DEFINITIONS, def)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+6
-3
@@ -17,15 +17,18 @@
|
|||||||
package org.jetbrains.kotlin.samWithReceiver
|
package org.jetbrains.kotlin.samWithReceiver
|
||||||
|
|
||||||
import org.jetbrains.kotlin.checkers.AbstractDiagnosticsTest
|
import org.jetbrains.kotlin.checkers.AbstractDiagnosticsTest
|
||||||
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.extensions.StorageComponentContainerContributor
|
import org.jetbrains.kotlin.extensions.StorageComponentContainerContributor
|
||||||
import java.io.File
|
|
||||||
|
|
||||||
abstract class AbstractSamWithReceiverTest : AbstractDiagnosticsTest() {
|
abstract class AbstractSamWithReceiverTest : AbstractDiagnosticsTest() {
|
||||||
private companion object {
|
private companion object {
|
||||||
private val TEST_ANNOTATIONS = listOf("SamWithReceiver")
|
private val TEST_ANNOTATIONS = listOf("SamWithReceiver")
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun createEnvironment(file: File) = super.createEnvironment(file).apply {
|
override fun setupEnvironment(environment: KotlinCoreEnvironment) {
|
||||||
StorageComponentContainerContributor.registerExtension(project, CliSamWithReceiverComponentContributor(TEST_ANNOTATIONS))
|
StorageComponentContainerContributor.registerExtension(
|
||||||
|
environment.project,
|
||||||
|
CliSamWithReceiverComponentContributor(TEST_ANNOTATIONS)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user