diff --git a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/confidence/KotlinConfidenceTest.java b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/confidence/KotlinConfidenceTest.java index 3a335995d44..efa4941ec15 100644 --- a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/confidence/KotlinConfidenceTest.java +++ b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/confidence/KotlinConfidenceTest.java @@ -86,16 +86,6 @@ public class KotlinConfidenceTest extends LightCompletionTestCase { 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() { boolean completeByChars = CodeInsightSettings.getInstance().SELECT_AUTOPOPUP_SUGGESTIONS_BY_CHARS; diff --git a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt index 17982095e98..dbe61533043 100644 --- a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt +++ b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt @@ -83,9 +83,7 @@ abstract class KotlinLightCodeInsightFixtureTestCase : KotlinLightCodeInsightFix VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory()) - doKotlinTearDown(project) { - super.tearDown() - } + super.tearDown() if (exceptions.isNotEmpty()) { exceptions.forEach { it.printStackTrace() } diff --git a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt.173 b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt.173 index 2d785042517..57f2adb1e9e 100644 --- a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt.173 +++ b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightCodeInsightFixtureTestCase.kt.173 @@ -84,9 +84,7 @@ abstract class KotlinLightCodeInsightFixtureTestCase : KotlinLightCodeInsightFix VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory()) - doKotlinTearDown(project) { - super.tearDown() - } + super.tearDown() if (exceptions.isNotEmpty()) { exceptions.forEach { it.printStackTrace() } diff --git a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightPlatformCodeInsightFixtureTestCase.kt b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightPlatformCodeInsightFixtureTestCase.kt index d1bc118723e..aa1bbe6f94a 100644 --- a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightPlatformCodeInsightFixtureTestCase.kt +++ b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/KotlinLightPlatformCodeInsightFixtureTestCase.kt @@ -35,9 +35,7 @@ abstract class KotlinLightPlatformCodeInsightFixtureTestCase: LightPlatformCodeI override fun tearDown() { VfsRootAccess.disallowRootAccess(KotlinTestUtils.getHomeDirectory()) - doKotlinTearDown(project) { - super.tearDown() - } + super.tearDown() } override fun getTestDataPath(): String = this::class.findAnnotation()?.value ?: super.getTestDataPath() diff --git a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/testUtils.kt b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/testUtils.kt index 343eecc3d7e..73dae7e5ada 100644 --- a/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/testUtils.kt +++ b/idea/idea-test-framework/test/org/jetbrains/kotlin/idea/test/testUtils.kt @@ -21,20 +21,13 @@ import com.intellij.openapi.module.Module import com.intellij.openapi.project.Project import com.intellij.openapi.roots.ModifiableRootModel import com.intellij.openapi.roots.ModuleRootModificationUtil.updateModel -import com.intellij.openapi.vfs.VirtualFile 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.util.Consumer import org.jetbrains.kotlin.diagnostics.Severity import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages import org.jetbrains.kotlin.idea.caches.project.LibraryModificationTracker 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.psi.KtFile import org.jetbrains.kotlin.test.InTextDirectivesUtils @@ -85,43 +78,6 @@ fun KtFile.dumpTextWithErrors(): String { 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() - 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) { LibraryModificationTracker.getInstance(project).incModificationCount() }