Scripting setting: auto reloading of script dependencies is now per definition

This commit is contained in:
Natalia Selezneva
2020-05-28 18:26:30 +03:00
parent 8726d3dc4e
commit fd07d5f301
21 changed files with 323 additions and 134 deletions
@@ -20,17 +20,20 @@ class ScriptOptionsSaveTest : KotlinLightCodeInsightFixtureTestCase() {
fun testSaveAutoReload() {
val project = myFixture.project
val settings = KotlinScriptingSettings.getInstance(project)
val initialAutoReload = settings.isAutoReloadEnabled
val definition = ScriptDefinitionsManager.getInstance(project).getAllDefinitions().first()
val initialAutoReload = settings.autoReloadConfigurations(definition)
settings.isAutoReloadEnabled = !initialAutoReload
settings.setAutoReloadConfigurations(definition, !initialAutoReload)
assertEquals(
"isAutoReloadEnabled should be set to true",
"<KotlinScriptingSettings><option name=\"isAutoReloadEnabled\" value=\"true\" /></KotlinScriptingSettings>",
"true",
XMLOutputter().outputString(settings.state)
.substringAfter("<autoReloadConfigurations>")
.substringBefore("</autoReloadConfigurations>")
)
settings.isAutoReloadEnabled = initialAutoReload
settings.setAutoReloadConfigurations(definition, initialAutoReload)
}
fun testSaveScriptDefinitionOff() {
@@ -45,8 +48,10 @@ class ScriptOptionsSaveTest : KotlinLightCodeInsightFixtureTestCase() {
assertEquals(
"scriptDefinition should be off",
"<KotlinScriptingSettings><scriptDefinition><order>0</order><isEnabled>false</isEnabled></scriptDefinition></KotlinScriptingSettings>",
XMLOutputter().outputString(settings.state).replace("scriptDefinition .*\">".toRegex(), "scriptDefinition>")
"false",
XMLOutputter().outputString(settings.state)
.substringAfter("<isEnabled>")
.substringBefore("</isEnabled>")
)
settings.setEnabled(scriptDefinition, initialIsEnabled)