diff --git a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/ScriptConfigurationManager.kt b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/ScriptConfigurationManager.kt index 7227862ebbe..3a65a322d98 100644 --- a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/ScriptConfigurationManager.kt +++ b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/ScriptConfigurationManager.kt @@ -166,8 +166,9 @@ interface ScriptConfigurationManager { } @TestOnly - fun updateScriptDependenciesSynchronously(file: PsiFile, project: Project) { - (getInstance(project) as AbstractScriptConfigurationManager).updateScriptDependenciesSynchronously(file) + fun updateScriptDependenciesSynchronously(file: PsiFile) { + // TODO: review the usages of this method + (getInstance(file.project) as AbstractScriptConfigurationManager).updateScriptDependenciesSynchronously(file) } @TestOnly diff --git a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/scriptUtils.kt b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/scriptUtils.kt index f4db7352885..1a88219eb50 100644 --- a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/scriptUtils.kt +++ b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/scriptUtils.kt @@ -15,7 +15,7 @@ import org.jetbrains.kotlin.psi.NotNullableUserDataProperty @set: org.jetbrains.annotations.TestOnly var Application.isScriptChangesNotifierDisabled by NotNullableUserDataProperty( Key.create("SCRIPT_CHANGES_NOTIFIER_DISABLED"), - false + true ) internal val LOG = Logger.getInstance("#org.jetbrains.kotlin.idea.script") diff --git a/idea/idea-gradle/tests/org/jetbrains/kotlin/idea/codeInsight/gradle/GradleBuildFileHighlightingTest.kt b/idea/idea-gradle/tests/org/jetbrains/kotlin/idea/codeInsight/gradle/GradleBuildFileHighlightingTest.kt index e42609d4e00..c31df619a8e 100644 --- a/idea/idea-gradle/tests/org/jetbrains/kotlin/idea/codeInsight/gradle/GradleBuildFileHighlightingTest.kt +++ b/idea/idea-gradle/tests/org/jetbrains/kotlin/idea/codeInsight/gradle/GradleBuildFileHighlightingTest.kt @@ -48,7 +48,7 @@ class GradleBuildFileHighlightingTest : GradleImportingTestCase() { val psiFile = PsiManager.getInstance(myProject).findFile(file) as? KtFile ?: error("Couldn't find psiFile for virtual file: ${file.canonicalPath}") - ScriptConfigurationManager.updateScriptDependenciesSynchronously(psiFile, myProject) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(psiFile) val bindingContext = psiFile.analyzeWithContent() diff --git a/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt b/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt index eba96f2a275..ff19a09404e 100644 --- a/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt +++ b/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt @@ -616,7 +616,7 @@ abstract class AbstractPerformanceProjectsTest : UsefulTestCase() { ) { if (isAKotlinScriptFile(fileName)) { runAndMeasure("update script dependencies for $fileName") { - ScriptConfigurationManager.updateScriptDependenciesSynchronously(fixture.psiFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(fixture.psiFile) } } } @@ -691,7 +691,7 @@ abstract class AbstractPerformanceProjectsTest : UsefulTestCase() { iterations(50) setUp { it.setUpValue = openFileInEditor(project, fileName) } test { - ScriptConfigurationManager.updateScriptDependenciesSynchronously(it.setUpValue!!.psiFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(it.setUpValue!!.psiFile) it.value = it.setUpValue } tearDown { diff --git a/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/PerformanceProjectsTest.kt b/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/PerformanceProjectsTest.kt index 058642bd4b6..0487649103c 100644 --- a/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/PerformanceProjectsTest.kt +++ b/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/PerformanceProjectsTest.kt @@ -317,7 +317,7 @@ class PerformanceProjectsTest : AbstractPerformanceProjectsTest() { // Note: Kotlin scripts require dependencies to be loaded if (isAKotlinScriptFile(fileName)) { - ScriptConfigurationManager.updateScriptDependenciesSynchronously(fixture.psiFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(fixture.psiFile) } resetTimestamp() diff --git a/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/Fixture.kt b/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/Fixture.kt index 75dbc423ab8..7fb8b9ea025 100644 --- a/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/Fixture.kt +++ b/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/Fixture.kt @@ -235,7 +235,7 @@ class Fixture(val project: Project, val editor: Editor, val psiFile: PsiFile, va val initialText = editor.document.text try { if (isAKotlinScriptFile(fileName)) { - ScriptConfigurationManager.updateScriptDependenciesSynchronously(fileInEditor.psiFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(fileInEditor.psiFile) } val tasksIdx = fileInEditor.document.text.indexOf(marker) diff --git a/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/AbstractScratchRunActionTest.kt b/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/AbstractScratchRunActionTest.kt index dd719ee385f..296ea845d07 100644 --- a/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/AbstractScratchRunActionTest.kt +++ b/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/AbstractScratchRunActionTest.kt @@ -216,7 +216,7 @@ abstract class AbstractScratchRunActionTest : FileEditorManagerTestCase() { myFixture.openFileInEditor(scratchVirtualFile) - ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file) val scratchFileEditor = getScratchEditorForSelectedFile(myManager, myFixture.file.virtualFile) ?: error("Couldn't find scratch file") @@ -229,7 +229,7 @@ abstract class AbstractScratchRunActionTest : FileEditorManagerTestCase() { protected fun configureWorksheetByText(name: String, text: String): ScratchFile { val worksheetFile = myFixture.configureByText(name, text).virtualFile - ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file) val scratchFileEditor = getScratchEditorForSelectedFile(myManager, myFixture.file.virtualFile) ?: error("Couldn't find scratch panel") diff --git a/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/ScratchLineMarkersTest.kt b/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/ScratchLineMarkersTest.kt index 744a59c6fc7..ccc27114fbe 100644 --- a/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/ScratchLineMarkersTest.kt +++ b/idea/scripting-support/test/org/jetbrains/kotlin/idea/scratch/ScratchLineMarkersTest.kt @@ -6,7 +6,6 @@ package org.jetbrains.kotlin.idea.scratch import com.intellij.codeInsight.daemon.LineMarkerInfo -import com.intellij.codeInsight.daemon.impl.DaemonCodeAnalyzerImpl import com.intellij.ide.scratch.ScratchFileService import com.intellij.ide.scratch.ScratchRootType import com.intellij.openapi.editor.Document @@ -37,7 +36,7 @@ abstract class AbstractScratchLineMarkersTest : FileEditorManagerTestCase() { myFixture.openFileInEditor(scratchVirtualFile) - ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file) val scratchFileEditor = getScratchEditorForSelectedFile(FileEditorManager.getInstance(project), myFixture.file.virtualFile) ?: error("Couldn't find scratch panel") diff --git a/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt b/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt index a34965121b7..c95afe57b93 100644 --- a/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt +++ b/idea/tests/org/jetbrains/kotlin/AbstractImportsTest.kt @@ -10,6 +10,7 @@ import com.intellij.psi.codeStyle.PackageEntry import com.intellij.testFramework.LightProjectDescriptor import junit.framework.TestCase import org.jetbrains.kotlin.idea.core.formatter.KotlinCodeStyleSettings +import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.idea.test.KotlinWithJdkAndRuntimeLightProjectDescriptor import org.jetbrains.kotlin.idea.util.application.executeWriteCommand @@ -40,6 +41,10 @@ abstract class AbstractImportsTest : KotlinLightCodeInsightFixtureTestCase() { val file = fixture.file as KtFile + if (file.isScript()) { + ScriptConfigurationManager.updateScriptDependenciesSynchronously(file) + } + val fileText = file.text codeStyleSettings.NAME_COUNT_TO_USE_STAR_IMPORT = diff --git a/idea/tests/org/jetbrains/kotlin/findUsages/AbstractFindUsagesTest.kt b/idea/tests/org/jetbrains/kotlin/findUsages/AbstractFindUsagesTest.kt index a30b8109c22..316006983e6 100644 --- a/idea/tests/org/jetbrains/kotlin/findUsages/AbstractFindUsagesTest.kt +++ b/idea/tests/org/jetbrains/kotlin/findUsages/AbstractFindUsagesTest.kt @@ -38,6 +38,7 @@ import com.intellij.usages.impl.rules.UsageTypeProvider import com.intellij.usages.rules.UsageFilteringRule import com.intellij.usages.rules.UsageGroupingRule import com.intellij.util.CommonProcessors +import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager import org.jetbrains.kotlin.idea.core.util.clearDialogsResults import org.jetbrains.kotlin.idea.core.util.setDialogsResult import org.jetbrains.kotlin.idea.findUsages.handlers.KotlinFindMemberUsagesHandler @@ -48,6 +49,7 @@ import org.jetbrains.kotlin.idea.test.KotlinWithJdkAndRuntimeLightProjectDescrip import org.jetbrains.kotlin.idea.test.TestFixtureExtension import org.jetbrains.kotlin.idea.util.ProjectRootsUtil import org.jetbrains.kotlin.idea.util.runReadActionInSmartMode +import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType import org.jetbrains.kotlin.test.InTextDirectivesUtils import org.jetbrains.kotlin.test.KotlinTestUtils @@ -124,6 +126,10 @@ abstract class AbstractFindUsagesTest : KotlinLightCodeInsightFixtureTestCase() } myFixture.configureByFile(mainFileName) + if ((myFixture.file as? KtFile)?.isScript() == true) { + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file) + } + val caretElement = when { InTextDirectivesUtils.isDirectiveDefined(mainFileText, "// FIND_BY_REF") -> TargetElementUtil.findTargetElement( myFixture.editor, diff --git a/idea/tests/org/jetbrains/kotlin/idea/ResolveElementCacheTest.kt b/idea/tests/org/jetbrains/kotlin/idea/ResolveElementCacheTest.kt index 2e13e8c66a4..d79edb7214a 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/ResolveElementCacheTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/ResolveElementCacheTest.kt @@ -13,6 +13,7 @@ import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithAllCompilerChecks import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.resolve.unsafeResolveToDescriptor +import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager import org.jetbrains.kotlin.idea.imports.importableFqName import org.jetbrains.kotlin.idea.util.application.executeWriteCommand import org.jetbrains.kotlin.name.SpecialNames @@ -517,6 +518,8 @@ class ResolveElementCacheTest : AbstractResolveElementCacheTest() { val script = file.script ?: error("File should be a script") + ScriptConfigurationManager.updateScriptDependenciesSynchronously(file) + val statement1 = (script.blockExpression.statements.first() as? KtScriptInitializer)?.body ?: error("Cannot find first expression in script") val statement2 = (script.blockExpression.statements.last() as? KtScriptInitializer)?.body diff --git a/idea/tests/org/jetbrains/kotlin/idea/caches/resolve/AbstractIdeLightClassTest.kt b/idea/tests/org/jetbrains/kotlin/idea/caches/resolve/AbstractIdeLightClassTest.kt index ffe30012ad4..507ecd5410e 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/caches/resolve/AbstractIdeLightClassTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/caches/resolve/AbstractIdeLightClassTest.kt @@ -27,6 +27,7 @@ import org.jetbrains.kotlin.idea.KotlinDaemonAnalyzerTestCase import org.jetbrains.kotlin.idea.caches.lightClasses.IDELightClassConstructionContext import org.jetbrains.kotlin.idea.caches.resolve.LightClassLazinessChecker.Tracker.Level.* import org.jetbrains.kotlin.idea.completion.test.withServiceRegistered +import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager import org.jetbrains.kotlin.idea.perf.forceUsingOldLightClassesForTest import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.idea.test.KotlinWithJdkAndRuntimeLightProjectDescriptor @@ -56,6 +57,9 @@ abstract class AbstractIdeLightClassTest : KotlinLightCodeInsightFixtureTestCase val lazinessMode = lazinessModeByFileText() myFixture.configureByFiles(*testFiles.toTypedArray()) + if ((myFixture.file as? KtFile)?.isScript() == true) { + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file) + } val ktFile = myFixture.file as KtFile val testData = testDataFile() diff --git a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractInspectionTest.kt b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractInspectionTest.kt index 766d7eb0d00..302b854d8bd 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractInspectionTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractInspectionTest.kt @@ -7,7 +7,6 @@ package org.jetbrains.kotlin.idea.codeInsight import com.intellij.application.options.CodeStyle import com.intellij.codeInspection.ex.EntryPointsManagerBase -import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.command.CommandProcessor import com.intellij.openapi.fileTypes.FileTypeManager import com.intellij.openapi.util.io.FileUtil @@ -16,7 +15,6 @@ import com.intellij.testFramework.TestLoggerFactory import org.jdom.Document import org.jdom.input.SAXBuilder import org.jetbrains.kotlin.formatter.FormatSettingsUtil -import org.jetbrains.kotlin.idea.core.script.isScriptChangesNotifierDisabled import org.jetbrains.kotlin.idea.inspections.runInspection import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.idea.test.TestFixtureExtension @@ -39,7 +37,6 @@ abstract class AbstractInspectionTest : KotlinLightCodeInsightFixtureTestCase() super.setUp() EntryPointsManagerBase.getInstance(project).ADDITIONAL_ANNOTATIONS.add(ENTRY_POINT_ANNOTATION) runWriteAction { FileTypeManager.getInstance().associateExtension(GroovyFileType.GROOVY_FILE_TYPE, "gradle") } - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = true } catch (e: Throwable) { TestLoggerFactory.onTestFinished(false) throw e @@ -47,7 +44,6 @@ abstract class AbstractInspectionTest : KotlinLightCodeInsightFixtureTestCase() } override fun tearDown() { - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = false EntryPointsManagerBase.getInstance(project).ADDITIONAL_ANNOTATIONS.remove(ENTRY_POINT_ANNOTATION) super.tearDown() } diff --git a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractOutOfBlockModificationTest.kt b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractOutOfBlockModificationTest.kt index 17f56659b4f..218866a981b 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractOutOfBlockModificationTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/AbstractOutOfBlockModificationTest.kt @@ -16,6 +16,7 @@ import com.intellij.psi.util.PsiTreeUtil import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithAllCompilerChecks import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.trackers.outOfBlockModificationCount +import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager import org.jetbrains.kotlin.idea.test.DirectiveBasedActionUtils import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.kdoc.psi.api.KDoc @@ -28,6 +29,9 @@ import org.jetbrains.kotlin.test.InTextDirectivesUtils abstract class AbstractOutOfBlockModificationTest : KotlinLightCodeInsightFixtureTestCase() { protected fun doTest(unused: String?) { val ktFile = myFixture.configureByFile(fileName()) as KtFile + if (ktFile.isScript()) { + ScriptConfigurationManager.updateScriptDependenciesSynchronously(ktFile) + } val expectedOutOfBlock = expectedOutOfBlockResult val isSkipCheckDefined = InTextDirectivesUtils.isDirectiveDefined( ktFile.text, diff --git a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt index 9d0ca60d12b..71f913619c0 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt @@ -21,7 +21,6 @@ import junit.framework.TestCase import org.jetbrains.kotlin.formatter.FormatSettingsUtil import org.jetbrains.kotlin.idea.codeInsight.upDownMover.KotlinDeclarationMover import org.jetbrains.kotlin.idea.codeInsight.upDownMover.KotlinExpressionMover -import org.jetbrains.kotlin.idea.core.script.isScriptChangesNotifierDisabled import org.jetbrains.kotlin.idea.formatter.kotlinCustomSettings import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightTestCase import org.jetbrains.kotlin.idea.test.configureCodeStyleAndRun @@ -64,16 +63,6 @@ abstract class AbstractMoveLeftRightTest : AbstractCodeMoverTest() { @Suppress("DEPRECATION") abstract class AbstractCodeMoverTest : KotlinLightCodeInsightTestCase() { - override fun setUp() { - super.setUp() - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = true - } - - override fun tearDown() { - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = false - super.tearDown() - } - protected fun doTest( path: String, trailingComma: Boolean = false, diff --git a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt.191 b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt.191 index 361f78d0a6e..1b5b1b5a083 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt.191 +++ b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/moveUpDown/AbstractCodeMoverTest.kt.191 @@ -64,16 +64,6 @@ abstract class AbstractMoveLeftRightTest : AbstractCodeMoverTest() { @Suppress("DEPRECATION") abstract class AbstractCodeMoverTest : KotlinLightCodeInsightTestCase() { - override fun setUp() { - super.setUp() - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = true - } - - override fun tearDown() { - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = false - super.tearDown() - } - protected fun doTest( path: String, trailingComma: Boolean = false, diff --git a/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java b/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java index 5dd7eaf40e4..e08f4df64dd 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java +++ b/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java @@ -20,7 +20,6 @@ import com.intellij.testFramework.LightProjectDescriptor; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import org.jetbrains.kotlin.idea.core.script.ScriptUtilsKt; import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightTestCase; import org.jetbrains.kotlin.test.InTextDirectivesUtils; import org.jetbrains.kotlin.test.KotlinTestUtils; @@ -43,12 +42,10 @@ public abstract class AbstractConfigureProjectByChangingFileTest FileTypeManager.getInstance().associateExtension(GroovyFileType.GROOVY_FILE_TYPE, "gradle") ); - ScriptUtilsKt.setScriptChangesNotifierDisabled(ApplicationManager.getApplication(), true); } @Override protected void tearDown() throws Exception { - ScriptUtilsKt.setScriptChangesNotifierDisabled(ApplicationManager.getApplication(), false); moduleInfoFile = null; super.tearDown(); } diff --git a/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java.192 b/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java.192 index 6d83287dfd6..d4007bb7ca8 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java.192 +++ b/idea/tests/org/jetbrains/kotlin/idea/configuration/AbstractConfigureProjectByChangingFileTest.java.192 @@ -44,12 +44,10 @@ public abstract class AbstractConfigureProjectByChangingFileTest FileTypeManager.getInstance().associateExtension(GroovyFileType.GROOVY_FILE_TYPE, "gradle") ); - ScriptUtilsKt.setScriptChangesNotifierDisabled(ApplicationManager.getApplication(), true); } @Override protected void tearDown() throws Exception { - ScriptUtilsKt.setScriptChangesNotifierDisabled(ApplicationManager.getApplication(), false); moduleInfoFile = null; super.tearDown(); } diff --git a/idea/tests/org/jetbrains/kotlin/idea/inspections/AbstractLocalInspectionTest.kt b/idea/tests/org/jetbrains/kotlin/idea/inspections/AbstractLocalInspectionTest.kt index 946205fd3e4..259c6d84308 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/inspections/AbstractLocalInspectionTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/inspections/AbstractLocalInspectionTest.kt @@ -17,6 +17,7 @@ import com.intellij.profile.codeInspection.ProjectInspectionProfileManager import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl import junit.framework.ComparisonFailure import junit.framework.TestCase +import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager import org.jetbrains.kotlin.idea.test.DirectiveBasedActionUtils import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.idea.test.withCustomCompilerOptions @@ -111,6 +112,10 @@ abstract class AbstractLocalInspectionTest : KotlinLightCodeInsightFixtureTestCa myFixture.configureByFiles(*(listOf(mainFile.name) + extraFileNames).toTypedArray()).first() + if ((myFixture.file as? KtFile)?.isScript() == true) { + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFixture.file) + } + doTestFor(mainFile.name, inspection, fileText) if (file is KtFile && !InTextDirectivesUtils.isDirectiveDefined(fileText, "// SKIP_ERRORS_AFTER")) { diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt b/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt index 2bbea12dce7..5b598dd1e04 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt @@ -23,7 +23,6 @@ import com.intellij.refactoring.BaseRefactoringProcessor import com.intellij.testFramework.LightProjectDescriptor import com.intellij.testFramework.PlatformTestUtil import com.intellij.testFramework.UsefulTestCase -import org.jetbrains.kotlin.idea.core.script.isScriptChangesNotifierDisabled import org.jetbrains.kotlin.idea.jsonUtils.getNullableString import org.jetbrains.kotlin.idea.refactoring.rename.loadTestConfiguration import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase @@ -38,16 +37,6 @@ abstract class AbstractMultifileRefactoringTest : KotlinLightCodeInsightFixtureT fun runRefactoring(rootDir: VirtualFile, mainFile: PsiFile, elementsAtCaret: List, config: JsonObject) } - override fun setUp() { - super.setUp() - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = true - } - - override fun tearDown() { - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = false - super.tearDown() - } - override fun getProjectDescriptor(): LightProjectDescriptor { if (KotlinTestUtils.isAllFilesPresentTest(getTestName(false))) return super.getProjectDescriptor() diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt b/idea/tests/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt index 3d599fbde79..9e57011e789 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt @@ -322,7 +322,7 @@ abstract class AbstractExtractionTest : KotlinLightCodeInsightFixtureTestCase() if (mainFile.extension == KotlinParserDefinition.STD_SCRIPT_SUFFIX) { val virtualFile = VfsUtil.findFileByIoFile(mainFile, true)!! val ktFile = PsiManager.getInstance(project).findFile(virtualFile)!! - ScriptConfigurationManager.updateScriptDependenciesSynchronously(ktFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(ktFile) } fixture.testDataPath = "${KotlinTestUtils.getHomeDirectory()}/${mainFile.parent}" diff --git a/idea/tests/org/jetbrains/kotlin/idea/run/StandaloneScriptRunConfigurationTest.kt b/idea/tests/org/jetbrains/kotlin/idea/run/StandaloneScriptRunConfigurationTest.kt index 9a696f58588..96d7e1e7bab 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/run/StandaloneScriptRunConfigurationTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/run/StandaloneScriptRunConfigurationTest.kt @@ -71,7 +71,7 @@ class StandaloneScriptRunConfigurationTest : KotlinCodeInsightTestCase() { fun testOnFileMoveWithDefaultWorkingDir() { configureByFile("move/script.kts") - ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFile) val script = KotlinScriptFqnIndex.instance.get("foo.Script", project, project.allScope()).single() val runConfiguration = createConfigurationFromElement(script, save = true) as KotlinStandaloneScriptRunConfiguration @@ -98,7 +98,7 @@ class StandaloneScriptRunConfigurationTest : KotlinCodeInsightTestCase() { fun testOnFileMoveWithNonDefaultWorkingDir() { configureByFile("move/script.kts") - ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFile) val script = KotlinScriptFqnIndex.instance.get("foo.Script", project, project.allScope()).single() val runConfiguration = createConfigurationFromElement(script, save = true) as KotlinStandaloneScriptRunConfiguration diff --git a/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationHighlightingTest.kt b/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationHighlightingTest.kt index 40f1053b29c..cbbc14d3da1 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationHighlightingTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationHighlightingTest.kt @@ -35,7 +35,7 @@ abstract class AbstractScriptConfigurationHighlightingTest : AbstractScriptConfi } }) - ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFile, project) + ScriptConfigurationManager.updateScriptDependenciesSynchronously(myFile) checkHighlighting(editor, false, false) } } \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationLoadingTest.kt b/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationLoadingTest.kt index cb158aefa28..e6bb2b4bc56 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationLoadingTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationLoadingTest.kt @@ -5,20 +5,18 @@ package org.jetbrains.kotlin.idea.script +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.components.ServiceManager import com.intellij.openapi.util.text.StringUtilRt import com.intellij.openapi.vfs.VfsUtil import com.intellij.openapi.vfs.VirtualFile import com.intellij.psi.PsiDocumentManager import com.intellij.psi.PsiFile -import org.jetbrains.kotlin.idea.core.script.IdeScriptReportSink -import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager -import org.jetbrains.kotlin.idea.core.script.applySuggestedScriptConfiguration +import org.jetbrains.kotlin.idea.core.script.* import org.jetbrains.kotlin.idea.core.script.configuration.DefaultScriptConfigurationManagerExtensions import org.jetbrains.kotlin.idea.core.script.configuration.loader.FileContentsDependentConfigurationLoader import org.jetbrains.kotlin.idea.core.script.configuration.testingBackgroundExecutor import org.jetbrains.kotlin.idea.core.script.configuration.utils.testScriptConfigurationNotification -import org.jetbrains.kotlin.idea.core.script.hasSuggestedScriptConfiguration import org.jetbrains.kotlin.idea.util.application.runWriteAction import org.jetbrains.kotlin.psi.KtFile @@ -41,6 +39,7 @@ abstract class AbstractScriptConfigurationLoadingTest : AbstractScriptConfigurat override fun setUp() { super.setUp() testScriptConfigurationNotification = true + ApplicationManager.getApplication().isScriptChangesNotifierDisabled = false scriptConfigurationManager = ServiceManager.getService(project, ScriptConfigurationManager::class.java) } @@ -48,6 +47,7 @@ abstract class AbstractScriptConfigurationLoadingTest : AbstractScriptConfigurat override fun tearDown() { super.tearDown() testScriptConfigurationNotification = false + ApplicationManager.getApplication().isScriptChangesNotifierDisabled = true occurredLoadings = 0 currentLoadingScriptConfigurationCallback = null } diff --git a/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationTest.kt b/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationTest.kt index 6ca0cbce751..ee514b7ea0f 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/script/AbstractScriptConfigurationTest.kt @@ -5,7 +5,6 @@ package org.jetbrains.kotlin.idea.script -import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.module.JavaModuleType import com.intellij.openapi.module.Module import com.intellij.openapi.projectRoots.Sdk @@ -26,7 +25,6 @@ import org.jetbrains.kotlin.idea.core.script.IdeScriptReportSink import org.jetbrains.kotlin.idea.core.script.ScriptConfigurationManager.Companion.updateScriptDependenciesSynchronously import org.jetbrains.kotlin.idea.core.script.ScriptDefinitionContributor import org.jetbrains.kotlin.idea.core.script.ScriptDefinitionsManager -import org.jetbrains.kotlin.idea.core.script.isScriptChangesNotifierDisabled import org.jetbrains.kotlin.idea.core.script.settings.KotlinScriptingSettings import org.jetbrains.kotlin.idea.highlighter.KotlinHighlightingUtil import org.jetbrains.kotlin.idea.test.PluginTestCaseBase @@ -148,7 +146,6 @@ abstract class AbstractScriptConfigurationTest : KotlinCompletionTestCase() { override fun setUp() { super.setUp() - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = true settings = KotlinScriptingSettings.getInstance(project).state @@ -164,8 +161,6 @@ abstract class AbstractScriptConfigurationTest : KotlinCompletionTestCase() { } override fun tearDown() { - ApplicationManager.getApplication().isScriptChangesNotifierDisabled = false - System.setProperty("kotlin.script.classpath", oldScripClasspath ?: "") settings?.let { @@ -292,7 +287,7 @@ abstract class AbstractScriptConfigurationTest : KotlinCompletionTestCase() { } protected open fun loadScriptConfigurationSynchronously(script: VirtualFile) { - updateScriptDependenciesSynchronously(myFile, project) + updateScriptDependenciesSynchronously(myFile) // This is needed because updateScriptDependencies invalidates psiFile that was stored in myFile field VfsUtil.markDirtyAndRefresh(false, true, true, project.baseDir)