Scripting: do not threat comments and spaces as modifications inside essential block
This commit is contained in:
@@ -8,10 +8,7 @@ package org.jetbrains.kotlin.idea.scripting.gradle
|
|||||||
import com.intellij.openapi.project.Project
|
import com.intellij.openapi.project.Project
|
||||||
import com.intellij.openapi.util.registry.Registry
|
import com.intellij.openapi.util.registry.Registry
|
||||||
import com.intellij.openapi.vfs.VirtualFile
|
import com.intellij.openapi.vfs.VirtualFile
|
||||||
import com.intellij.psi.PsiElement
|
import com.intellij.psi.*
|
||||||
import com.intellij.psi.PsiManager
|
|
||||||
import com.intellij.psi.PsiRecursiveElementVisitor
|
|
||||||
import com.intellij.psi.PsiWhiteSpace
|
|
||||||
import com.intellij.psi.impl.source.tree.LeafPsiElement
|
import com.intellij.psi.impl.source.tree.LeafPsiElement
|
||||||
import org.gradle.util.GradleVersion
|
import org.gradle.util.GradleVersion
|
||||||
import org.jetbrains.kotlin.idea.util.application.runReadAction
|
import org.jetbrains.kotlin.idea.util.application.runReadAction
|
||||||
@@ -49,6 +46,7 @@ fun getGradleScriptInputsStamp(
|
|||||||
super.visitElement(element)
|
super.visitElement(element)
|
||||||
when (element) {
|
when (element) {
|
||||||
is PsiWhiteSpace -> if (element.text.contains("\n")) result.append("\n")
|
is PsiWhiteSpace -> if (element.text.contains("\n")) result.append("\n")
|
||||||
|
is PsiComment -> { }
|
||||||
is LeafPsiElement -> result.append(element.text)
|
is LeafPsiElement -> result.append(element.text)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+16
@@ -63,6 +63,22 @@ class GradleScriptInputsWatcherTest : AbstractScriptConfigurationLoadingTest() {
|
|||||||
assertConfigurationUpdateWasDone(testFiles.buildKts)
|
assertConfigurationUpdateWasDone(testFiles.buildKts)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun testSpacesInSectionsChange() {
|
||||||
|
assertAndLoadInitialConfiguration(testFiles.buildKts)
|
||||||
|
|
||||||
|
changeBuildKtsInsideSections("// INSIDE PLUGINS\n")
|
||||||
|
|
||||||
|
assertConfigurationUpToDate(testFiles.buildKts)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun testCommentsInSectionsChange() {
|
||||||
|
assertAndLoadInitialConfiguration(testFiles.buildKts)
|
||||||
|
|
||||||
|
changeBuildKtsInsideSections("// My test comment\n")
|
||||||
|
|
||||||
|
assertConfigurationUpToDate(testFiles.buildKts)
|
||||||
|
}
|
||||||
|
|
||||||
fun testOutsideSectionChange() {
|
fun testOutsideSectionChange() {
|
||||||
assertAndLoadInitialConfiguration(testFiles.buildKts)
|
assertAndLoadInitialConfiguration(testFiles.buildKts)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user