Disable indexation ExternalSystem tests

This commit is contained in:
Andrey Uskov
2020-10-27 00:33:51 +03:00
parent 9318d401f7
commit e5be9601e6
10 changed files with 52 additions and 21 deletions
@@ -27,7 +27,7 @@ class ImportAndCheckHighlighting : MultiplePluginVersionGradleImportingTestCase(
private fun importAndCheckHighlighting(testLineMarkers: Boolean = true, checkWarnings: Boolean = true) {
val files = configureByFiles()
importProject()
importProject(skipIndexing = false)
val project = myTestFixture.project
checkFiles(
files.filter { it.extension == "kt" || it.extension == "java" },
@@ -6,9 +6,7 @@
package org.jetbrains.kotlin.gradle
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.PsiComment
import com.intellij.psi.PsiReference
import com.intellij.psi.PsiWhiteSpace
import com.intellij.psi.*
import com.intellij.psi.util.PsiTreeUtil
import com.intellij.testFramework.runInEdtAndGet
import org.jetbrains.kotlin.idea.codeInsight.gradle.MasterPluginVersionGradleImportingTestCase
@@ -25,7 +23,7 @@ class ImportAndCheckNavigation : MasterPluginVersionGradleImportingTestCase() {
@Test
@PluginTargetVersions(gradleVersion = "6.0+", pluginVersion = "1.4+", gradleVersionForLatestPlugin = mppImportTestMinVersionForMaster)
fun testNavigationToCommonizedLibrary() {
val files = importProjectFromTestData()
val files = configureAndImportProject()
files.forEach { vFile ->
val referencesToTest = vFile.collectReferencesToTest()
@@ -50,6 +48,12 @@ class ImportAndCheckNavigation : MasterPluginVersionGradleImportingTestCase() {
override fun testDataDirName() = "importAndCheckNavigation"
private fun configureAndImportProject(): List<VirtualFile> {
val files = configureByFiles()
importProject(skipIndexing = false)
return files
}
private fun VirtualFile.collectReferencesToTest(): Map<PsiReference, String> {
if (extension != "kt") return emptyMap()
@@ -20,7 +20,7 @@ class KaptImportingTest : MultiplePluginVersionGradleImportingTestCase() {
val isCreateEmptyContentRootDirectories = currentExternalProjectSettings.isCreateEmptyContentRootDirectories
currentExternalProjectSettings.isCreateEmptyContentRootDirectories = true
try {
super.importProject()
super.importProject(true)
} finally {
currentExternalProjectSettings.isCreateEmptyContentRootDirectories = isCreateEmptyContentRootDirectories
}
@@ -368,7 +368,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin
@PluginTargetVersions(gradleVersionForLatestPlugin = mppImportTestMinVersionForMaster)
fun testTestTasks() {
val files = configureByFiles()
importProject()
importProject(skipIndexing = true)
checkProjectStructure(exhaustiveSourceSourceRootList = false) {
module("project")
@@ -47,7 +47,7 @@ class PackagePrefixImportingTest : MultiplePluginVersionGradleImportingTestCase(
val isCreateEmptyContentRootDirectories = currentExternalProjectSettings.isCreateEmptyContentRootDirectories
currentExternalProjectSettings.isCreateEmptyContentRootDirectories = true
try {
super.importProject()
super.importProject(true)
} finally {
currentExternalProjectSettings.isCreateEmptyContentRootDirectories = isCreateEmptyContentRootDirectories
}
@@ -449,13 +449,28 @@ public abstract class ExternalSystemImportingTestCase extends ExternalSystemTest
return getRootManager(moduleName).getContentEntries();
}
protected void importProject(@NonNls String config) throws IOException {
protected void importProject(@NonNls String config, Boolean skipIndexing) throws IOException {
createProjectConfig(config);
importProject();
importProject(skipIndexing);
}
protected void importProject() {
doImportProject();
protected void importProject(Boolean skipIndexing) {
String indexingPropertyName = "idea.skip.indices.initialization";
String previousIndexingState = System.getProperty(indexingPropertyName);
try {
if (skipIndexing != null) {
System.setProperty(indexingPropertyName, skipIndexing.toString());
}
doImportProject();
} finally {
if (skipIndexing != null) {
if (previousIndexingState == null) {
System.clearProperty(indexingPropertyName);
} else {
System.setProperty(indexingPropertyName, previousIndexingState);
}
}
}
}
public boolean ensureIsNotGradleProxyObject(
@@ -889,7 +889,7 @@ class GradleFacetImportTest : GradleImportingTestCase() {
val isCreateEmptyContentRootDirectories = currentExternalProjectSettings.isCreateEmptyContentRootDirectories
try {
currentExternalProjectSettings.isCreateEmptyContentRootDirectories = true
super.importProject()
super.importProject(true)
} finally {
currentExternalProjectSettings.isCreateEmptyContentRootDirectories = isCreateEmptyContentRootDirectories
}
@@ -219,12 +219,16 @@ abstract class GradleImportingTestCase : ExternalSystemImportingTestCase() {
override fun getExternalSystemConfigFileName(): String = "build.gradle"
@Throws(IOException::class)
protected open fun importProjectUsingSingeModulePerGradleProject(config: String? = null) {
protected open fun importProjectUsingSingeModulePerGradleProject(config: String? = null, skipIndexing: Boolean? = null) {
currentExternalProjectSettings.isResolveModulePerSourceSet = false
importProject(config)
importProject(config, skipIndexing)
}
override fun importProject() {
open fun importProject() {
importProject(skipIndexing = null)
}
override fun importProject(skipIndexing: Boolean?) {
ExternalSystemApiUtil.subscribe(
myProject,
GradleConstants.SYSTEM_ID,
@@ -236,14 +240,14 @@ abstract class GradleImportingTestCase : ExternalSystemImportingTestCase() {
}
}
})
super.importProject()
super.importProject(skipIndexing)
}
@Throws(IOException::class)
override fun importProject(@NonNls @Language("Groovy") config: String?) {
override fun importProject(@NonNls @Language("Groovy") config: String?, skipIndexing: Boolean?) {
var config = config
config = injectRepo(config)
super.importProject(config)
super.importProject(config, skipIndexing)
}
override fun handleImportFailure(errorMessage: String, errorDetails: String?) {
@@ -385,9 +389,9 @@ abstract class GradleImportingTestCase : ExternalSystemImportingTestCase() {
}.toList()
}
protected fun importProjectFromTestData(): List<VirtualFile> {
protected fun importProjectFromTestData(skipIndexing: Boolean? = null): List<VirtualFile> {
val files = configureByFiles()
importProject()
importProject(skipIndexing)
return files
}
@@ -42,6 +42,10 @@ class GradleKtsImportTest : GradleImportingTestCase() {
return "gradleKtsImportTest"
}
override fun importProject() {
importProject(true)
}
@Test
@TargetVersions("6.0.1+")
fun testEmpty() {
@@ -35,6 +35,10 @@ abstract class MultiplePluginVersionGradleImportingTestCase : GradleImportingTes
)
}
override fun importProject() {
super.importProject(skipIndexing = true)
}
@JvmField
@Parameterized.Parameter(1)
var gradleKotlinPluginVersionType: String = MINIMAL_SUPPORTED_VERSION