Revert "[Test] Save TargetBackend instead of BackendKind in TestModule"

This reverts commit 29d923d5
This commit is contained in:
Dmitriy Novozhilov
2020-12-24 13:57:02 +03:00
parent 07b980fea0
commit 70ae756083
13 changed files with 39 additions and 86 deletions
@@ -6,11 +6,14 @@
package org.jetbrains.kotlin.test
import com.intellij.openapi.Disposable
import org.jetbrains.kotlin.test.directives.ConfigurationDirectives
import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives
import org.jetbrains.kotlin.test.directives.model.DirectivesContainer
import org.jetbrains.kotlin.test.directives.model.RegisteredDirectives
import org.jetbrains.kotlin.test.model.*
import org.jetbrains.kotlin.test.services.MetaTestConfigurator
import org.jetbrains.kotlin.test.services.ModuleStructureExtractor
import org.jetbrains.kotlin.test.services.SourceFilePreprocessor
import org.jetbrains.kotlin.test.services.TestServices
typealias Constructor<T> = (TestServices) -> T
@@ -49,7 +49,7 @@ class TestRunner(private val testConfiguration: TestConfiguration) {
var failedException: Throwable? = null
try {
for (module in modules) {
processModule(services, module, dependencyProvider, moduleStructure)
processModule(module, dependencyProvider, moduleStructure)
}
} catch (e: Throwable) {
failedException = e
@@ -81,7 +81,6 @@ class TestRunner(private val testConfiguration: TestConfiguration) {
}
private fun processModule(
services: TestServices,
module: TestModule,
dependencyProvider: DependencyProviderImpl,
moduleStructure: TestModuleStructure
@@ -100,7 +99,7 @@ class TestRunner(private val testConfiguration: TestConfiguration) {
}
}
val backendKind = services.backendKindExtractor.backendKind(module.targetBackend)
val backendKind = module.backendKind
if (!backendKind.shouldRunAnalysis) return
val backendInputInfo = testConfiguration.getFacade(frontendKind, backendKind)
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.test.directives
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.directives.model.SimpleDirectivesContainer
object ModuleStructureDirectives : SimpleDirectivesContainer() {
@@ -46,7 +45,7 @@ object ModuleStructureDirectives : SimpleDirectivesContainer() {
""".trimIndent()
)
val TARGET_BACKEND_KIND by enumDirective<TargetBackend>(
val TARGET_BACKEND_KIND by stringDirective(
"""
Usage: // TARGET_BACKEND: {Backend}
Declares backend for analyzing current module
@@ -7,15 +7,14 @@ package org.jetbrains.kotlin.test.model
import org.jetbrains.kotlin.config.LanguageVersionSettings
import org.jetbrains.kotlin.platform.TargetPlatform
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.directives.model.RegisteredDirectives
import java.io.File
data class TestModule(
val name: String,
val targetPlatform: TargetPlatform,
val targetBackend: TargetBackend?,
val frontendKind: FrontendKind<*>,
val backendKind: BackendKind<*>,
val files: List<TestFile>,
val dependencies: List<DependencyDescription>,
val directives: RegisteredDirectives,
@@ -1,15 +0,0 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.test.services
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.model.BackendKind
abstract class BackendKindExtractor(protected val testServices: TestServices) : TestService {
abstract fun backendKind(targetBackend: TargetBackend?): BackendKind<*>
}
val TestServices.backendKindExtractor: BackendKindExtractor by TestServices.testServiceAccessor()
@@ -7,8 +7,8 @@ package org.jetbrains.kotlin.test.services
import org.jetbrains.kotlin.config.LanguageVersionSettings
import org.jetbrains.kotlin.platform.TargetPlatform
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlin.test.builders.LanguageVersionSettingsBuilder
import org.jetbrains.kotlin.test.model.BackendKind
import org.jetbrains.kotlin.test.model.DependencyKind
import org.jetbrains.kotlin.test.model.FrontendKind
@@ -18,11 +18,11 @@ import org.jetbrains.kotlin.test.model.FrontendKind
* - default libraries
*/
class DefaultsProvider(
val defaultBackend: BackendKind<*>,
val defaultFrontend: FrontendKind<*>,
val defaultLanguageSettings: LanguageVersionSettings,
private val defaultLanguageSettingsBuilder: LanguageVersionSettingsBuilder,
val defaultPlatform: TargetPlatform,
val defaultTargetBackend: TargetBackend?,
val defaultDependencyKind: DependencyKind
) : TestService {
fun newLanguageSettingsBuilder(): LanguageVersionSettingsBuilder {