Remove dead code for builtins uninvalidation in tests
This commit is contained in:
-10
@@ -86,16 +86,6 @@ public class KotlinConfidenceTest extends LightCompletionTestCase {
|
|||||||
TestUtilsKt.invalidateLibraryCache(getProject());
|
TestUtilsKt.invalidateLibraryCache(getProject());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void tearDown() throws Exception {
|
|
||||||
TestUtilsKt.doKotlinTearDown(getProject(), new RunnableWithException() {
|
|
||||||
@Override
|
|
||||||
public void run() throws Exception {
|
|
||||||
KotlinConfidenceTest.super.tearDown();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void doTest() {
|
protected void doTest() {
|
||||||
boolean completeByChars = CodeInsightSettings.getInstance().SELECT_AUTOPOPUP_SUGGESTIONS_BY_CHARS;
|
boolean completeByChars = CodeInsightSettings.getInstance().SELECT_AUTOPOPUP_SUGGESTIONS_BY_CHARS;
|
||||||
|
|
||||||
|
|||||||
+1
-3
@@ -83,9 +83,7 @@ abstract class KotlinLightCodeInsightFixtureTestCase : KotlinLightCodeInsightFix
|
|||||||
|
|
||||||
VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory())
|
VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory())
|
||||||
|
|
||||||
doKotlinTearDown(project) {
|
super.tearDown()
|
||||||
super.tearDown()
|
|
||||||
}
|
|
||||||
|
|
||||||
if (exceptions.isNotEmpty()) {
|
if (exceptions.isNotEmpty()) {
|
||||||
exceptions.forEach { it.printStackTrace() }
|
exceptions.forEach { it.printStackTrace() }
|
||||||
|
|||||||
+1
-3
@@ -84,9 +84,7 @@ abstract class KotlinLightCodeInsightFixtureTestCase : KotlinLightCodeInsightFix
|
|||||||
|
|
||||||
VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory())
|
VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory())
|
||||||
|
|
||||||
doKotlinTearDown(project) {
|
super.tearDown()
|
||||||
super.tearDown()
|
|
||||||
}
|
|
||||||
|
|
||||||
if (exceptions.isNotEmpty()) {
|
if (exceptions.isNotEmpty()) {
|
||||||
exceptions.forEach { it.printStackTrace() }
|
exceptions.forEach { it.printStackTrace() }
|
||||||
|
|||||||
+1
-3
@@ -35,9 +35,7 @@ abstract class KotlinLightPlatformCodeInsightFixtureTestCase: LightPlatformCodeI
|
|||||||
override fun tearDown() {
|
override fun tearDown() {
|
||||||
VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory())
|
VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory())
|
||||||
|
|
||||||
doKotlinTearDown(project) {
|
super.tearDown()
|
||||||
super.tearDown()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getTestDataPath(): String = this::class.findAnnotation<TestMetadata>()?.value ?: super.getTestDataPath()
|
override fun getTestDataPath(): String = this::class.findAnnotation<TestMetadata>()?.value ?: super.getTestDataPath()
|
||||||
|
|||||||
@@ -21,20 +21,13 @@ import com.intellij.openapi.module.Module
|
|||||||
import com.intellij.openapi.project.Project
|
import com.intellij.openapi.project.Project
|
||||||
import com.intellij.openapi.roots.ModifiableRootModel
|
import com.intellij.openapi.roots.ModifiableRootModel
|
||||||
import com.intellij.openapi.roots.ModuleRootModificationUtil.updateModel
|
import com.intellij.openapi.roots.ModuleRootModificationUtil.updateModel
|
||||||
import com.intellij.openapi.vfs.VirtualFile
|
|
||||||
import com.intellij.psi.PsiDocumentManager
|
import com.intellij.psi.PsiDocumentManager
|
||||||
import com.intellij.psi.PsiManager
|
|
||||||
import com.intellij.psi.impl.PsiManagerEx
|
|
||||||
import com.intellij.psi.impl.file.impl.FileManagerImpl
|
|
||||||
import com.intellij.psi.impl.source.PsiFileImpl
|
|
||||||
import com.intellij.testFramework.LightPlatformTestCase
|
import com.intellij.testFramework.LightPlatformTestCase
|
||||||
import com.intellij.util.Consumer
|
import com.intellij.util.Consumer
|
||||||
import org.jetbrains.kotlin.diagnostics.Severity
|
import org.jetbrains.kotlin.diagnostics.Severity
|
||||||
import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages
|
import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages
|
||||||
import org.jetbrains.kotlin.idea.caches.project.LibraryModificationTracker
|
import org.jetbrains.kotlin.idea.caches.project.LibraryModificationTracker
|
||||||
import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithContent
|
import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithContent
|
||||||
import org.jetbrains.kotlin.idea.decompiler.KotlinDecompiledFileViewProvider
|
|
||||||
import org.jetbrains.kotlin.idea.decompiler.KtDecompiledFile
|
|
||||||
import org.jetbrains.kotlin.idea.util.application.runWriteAction
|
import org.jetbrains.kotlin.idea.util.application.runWriteAction
|
||||||
import org.jetbrains.kotlin.psi.KtFile
|
import org.jetbrains.kotlin.psi.KtFile
|
||||||
import org.jetbrains.kotlin.test.InTextDirectivesUtils
|
import org.jetbrains.kotlin.test.InTextDirectivesUtils
|
||||||
@@ -85,43 +78,6 @@ fun KtFile.dumpTextWithErrors(): String {
|
|||||||
|
|
||||||
fun closeAndDeleteProject() = LightPlatformTestCase.closeAndDeleteProject()
|
fun closeAndDeleteProject() = LightPlatformTestCase.closeAndDeleteProject()
|
||||||
|
|
||||||
fun doKotlinTearDown(project: Project, runnable: RunnableWithException) {
|
|
||||||
doKotlinTearDown(project) { runnable.run() }
|
|
||||||
}
|
|
||||||
|
|
||||||
fun doKotlinTearDown(project: Project, runnable: () -> Unit) {
|
|
||||||
unInvalidateBuiltinsAndStdLib(project) {
|
|
||||||
runnable()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fun unInvalidateBuiltinsAndStdLib(project: Project, runnable: () -> Unit) {
|
|
||||||
val stdLibViewProviders = HashSet<KotlinDecompiledFileViewProvider>()
|
|
||||||
val vFileToViewProviderMap = ((PsiManager.getInstance(project) as PsiManagerEx).fileManager as FileManagerImpl).vFileToViewProviderMap
|
|
||||||
for ((file, viewProvider) in vFileToViewProviderMap) {
|
|
||||||
if (file.isStdLibFile && viewProvider is KotlinDecompiledFileViewProvider) {
|
|
||||||
stdLibViewProviders.add(viewProvider)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
runnable()
|
|
||||||
|
|
||||||
// Base tearDown() invalidates builtins and std-lib files. Restore them with brute force.
|
|
||||||
fun unInvalidateFile(file: PsiFileImpl) {
|
|
||||||
val field = PsiFileImpl::class.java.getDeclaredField("myInvalidated")!!
|
|
||||||
field.isAccessible = true
|
|
||||||
field.set(file, false)
|
|
||||||
}
|
|
||||||
|
|
||||||
stdLibViewProviders.forEach {
|
|
||||||
it.allFiles.forEach { unInvalidateFile(it as KtDecompiledFile) }
|
|
||||||
vFileToViewProviderMap[it.virtualFile] = it
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// looks like the entire uninvalidation is a dead code now
|
|
||||||
private val VirtualFile.isStdLibFile: Boolean get() = false // presentableUrl.contains("kotlin-runtime.jar")
|
|
||||||
|
|
||||||
fun invalidateLibraryCache(project: Project) {
|
fun invalidateLibraryCache(project: Project) {
|
||||||
LibraryModificationTracker.getInstance(project).incModificationCount()
|
LibraryModificationTracker.getInstance(project).incModificationCount()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user