Move: Fix runtime unconfiguration for multiple modules

This commit is contained in:
Alexey Sedunov
2017-03-24 17:20:25 +03:00
parent 1d0162402e
commit 87ea13b307
@@ -21,6 +21,7 @@ import com.google.gson.JsonParser
import com.intellij.codeInsight.TargetElementUtilBase import com.intellij.codeInsight.TargetElementUtilBase
import com.intellij.openapi.editor.EditorFactory import com.intellij.openapi.editor.EditorFactory
import com.intellij.openapi.fileEditor.FileDocumentManager import com.intellij.openapi.fileEditor.FileDocumentManager
import com.intellij.openapi.module.Module
import com.intellij.openapi.module.ModuleManager import com.intellij.openapi.module.ModuleManager
import com.intellij.openapi.util.io.FileUtil import com.intellij.openapi.util.io.FileUtil
import com.intellij.openapi.vfs.VfsUtil import com.intellij.openapi.vfs.VfsUtil
@@ -71,13 +72,18 @@ abstract class AbstractMoveTest : KotlinMultiFileTestCase() {
isMultiModule = config["isMultiModule"]?.asBoolean ?: false isMultiModule = config["isMultiModule"]?.asBoolean ?: false
doTest({ rootDir, _ -> doTest({ rootDir, _ ->
val modulesWithRuntime: List<Module>
val withRuntime = config["withRuntime"]?.asBoolean ?: false val withRuntime = config["withRuntime"]?.asBoolean ?: false
if (withRuntime) { if (withRuntime) {
val moduleManager = ModuleManager.getInstance(project) val moduleManager = ModuleManager.getInstance(project)
val modulesToConfigure = modulesWithRuntime =
(config["modulesWithRuntime"]?.asJsonArray?.map { moduleManager.findModuleByName(it.asString!!)!! } (config["modulesWithRuntime"]?.asJsonArray?.map { moduleManager.findModuleByName(it.asString!!)!! }
?: moduleManager.modules.toList()) ?: moduleManager.modules.toList())
modulesToConfigure.forEach { ConfigLibraryUtil.configureKotlinRuntimeAndSdk(it, PluginTestCaseBase.mockJdk()) } modulesWithRuntime.forEach { ConfigLibraryUtil.configureKotlinRuntimeAndSdk(it, PluginTestCaseBase.mockJdk()) }
}
else {
modulesWithRuntime = emptyList()
} }
val mainFile = rootDir.findFileByRelativePath(mainFilePath)!! val mainFile = rootDir.findFileByRelativePath(mainFilePath)!!
@@ -116,8 +122,8 @@ abstract class AbstractMoveTest : KotlinMultiFileTestCase() {
EditorFactory.getInstance()!!.releaseEditor(editor) EditorFactory.getInstance()!!.releaseEditor(editor)
if (withRuntime) { modulesWithRuntime.forEach {
ConfigLibraryUtil.unConfigureKotlinRuntimeAndSdk(myModule, PluginTestCaseBase.mockJdk()) ConfigLibraryUtil.unConfigureKotlinRuntimeAndSdk(it, PluginTestCaseBase.mockJdk())
} }
} }
}, },