Add enable / disable feature in Gradle (Groovy) project, forTests option
Part of KT-26775
This commit is contained in:
+6
-1
@@ -56,7 +56,12 @@ interface KotlinProjectConfigurator {
|
||||
|
||||
fun changeCoroutineConfiguration(module: Module, state: LanguageFeature.State)
|
||||
|
||||
fun changeGeneralFeatureConfiguration(module: Module, feature: LanguageFeature, state: LanguageFeature.State)
|
||||
fun changeGeneralFeatureConfiguration(
|
||||
module: Module,
|
||||
feature: LanguageFeature,
|
||||
state: LanguageFeature.State,
|
||||
forTests: Boolean
|
||||
)
|
||||
|
||||
fun addLibraryDependency(module: Module, element: PsiElement, library: ExternalLibraryDescriptor, libraryJarDescriptors: List<LibraryJarDescriptor>)
|
||||
|
||||
|
||||
+2
-1
@@ -348,7 +348,8 @@ abstract class KotlinWithLibraryConfigurator protected constructor() : KotlinPro
|
||||
override fun changeGeneralFeatureConfiguration(
|
||||
module: Module,
|
||||
feature: LanguageFeature,
|
||||
state: LanguageFeature.State
|
||||
state: LanguageFeature.State,
|
||||
forTests: Boolean
|
||||
) {
|
||||
val sinceVersion = feature.sinceApiVersion
|
||||
|
||||
|
||||
+4
-1
@@ -9,6 +9,7 @@ import com.intellij.codeInsight.intention.IntentionAction
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.module.ModuleUtilCore
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.roots.ModuleRootManager
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
@@ -16,6 +17,7 @@ import org.jetbrains.kotlin.idea.compiler.configuration.KotlinCompilerSettings
|
||||
import org.jetbrains.kotlin.idea.configuration.BuildSystemType
|
||||
import org.jetbrains.kotlin.idea.configuration.findApplicableConfigurator
|
||||
import org.jetbrains.kotlin.idea.configuration.getBuildSystemType
|
||||
import org.jetbrains.kotlin.idea.core.isInTestSourceContentKotlinAware
|
||||
import org.jetbrains.kotlin.idea.facet.KotlinFacet
|
||||
import org.jetbrains.kotlin.idea.roots.invalidateProjectRoots
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
@@ -35,8 +37,9 @@ sealed class ChangeGeneralLanguageFeatureSupportFix(
|
||||
|
||||
override fun invoke(project: Project, editor: Editor?, file: KtFile) {
|
||||
val module = ModuleUtilCore.findModuleForPsiElement(file) ?: return
|
||||
val forTests = ModuleRootManager.getInstance(module).fileIndex.isInTestSourceContentKotlinAware(file.virtualFile)
|
||||
|
||||
findApplicableConfigurator(module).changeGeneralFeatureConfiguration(module, feature, featureSupport)
|
||||
findApplicableConfigurator(module).changeGeneralFeatureConfiguration(module, feature, featureSupport, forTests)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user