IDEA 142.4859.6: Invalidate library cache in setUp() to prevent access to

ClsFiles invalidated by the previous test
This commit is contained in:
Alexey Sedunov
2015-09-19 23:16:05 +03:00
committed by Alexey Sedunov
parent a892d3f995
commit 8603a36404
7 changed files with 29 additions and 9 deletions
@@ -26,6 +26,7 @@ import com.intellij.openapi.util.text.StringUtil;
import org.apache.commons.lang.SystemUtils;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.idea.completion.test.TestPackage;
import org.jetbrains.kotlin.idea.test.TestUtilsKt;
import org.jetbrains.kotlin.test.InTextDirectivesUtils;
import java.io.File;
@@ -53,6 +54,12 @@ public class JetConfidenceTest extends LightCompletionTestCase {
doTest();
}
@Override
protected void setUp() throws Exception {
super.setUp();
TestUtilsKt.invalidateLibraryCache(getProject());
}
protected void doTest() {
boolean completeByChars = CodeInsightSettings.getInstance().SELECT_AUTOPOPUP_SUGGESTIONS_BY_CHARS;
@@ -55,6 +55,8 @@ public abstract class JetLightCodeInsightFixtureTestCase : LightCodeInsightFixtu
getProject().getComponent(javaClass<EditorTracker>())?.projectOpened()
invalidateLibraryCache(project)
LoggedErrorProcessor.setNewInstance(object : LoggedErrorProcessor() {
override fun processError(message: String?, t: Throwable?, details: Array<out String>?, logger: Logger) {
exceptions.addIfNotNull(t)
@@ -30,6 +30,7 @@ public abstract class KotlinLightPlatformCodeInsightFixtureTestCase: LightPlatfo
super.setUp()
(StartupManager.getInstance(getProject()) as StartupManagerImpl).runPostStartupActivities()
VfsRootAccess.allowRootAccess(JetTestUtils.getHomeDirectory())
invalidateLibraryCache(project)
kotlinInternalModeOriginalValue = KotlinInternalMode.enabled
KotlinInternalMode.enabled = true
@@ -27,6 +27,7 @@ import com.intellij.testFramework.LightProjectDescriptor
import com.intellij.util.Consumer
import org.jetbrains.kotlin.diagnostics.Severity
import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages
import org.jetbrains.kotlin.idea.caches.resolve.LibraryModificationTracker
import org.jetbrains.kotlin.idea.caches.resolve.analyzeFullyAndGetResult
import org.jetbrains.kotlin.idea.js.KotlinJavaScriptLibraryManager
import org.jetbrains.kotlin.idea.references.BuiltInsReferenceResolver
@@ -95,3 +96,7 @@ public fun unInvalidateBuiltins(project: Project, runnable: RunnableWithExceptio
public fun unInvalidateBuiltins(project: Project, runnable: () -> Unit) {
unInvalidateBuiltins(project, RunnableWithException { runnable() })
}
public fun invalidateLibraryCache(project: Project) {
LibraryModificationTracker.getInstance(project).incModificationCount()
}
@@ -20,6 +20,7 @@ import com.intellij.codeInsight.daemon.quickFix.LightQuickFixTestCase;
import com.intellij.openapi.vfs.newvfs.impl.VfsRootAccess;
import org.jetbrains.kotlin.idea.test.RunnableWithException;
import org.jetbrains.kotlin.idea.test.TestPackage;
import org.jetbrains.kotlin.idea.test.TestUtilsKt;
import org.jetbrains.kotlin.test.JetTestUtils;
abstract public class KotlinLightQuickFixTestCase extends LightQuickFixTestCase {
@@ -27,6 +28,7 @@ abstract public class KotlinLightQuickFixTestCase extends LightQuickFixTestCase
protected void setUp() throws Exception {
super.setUp();
VfsRootAccess.allowRootAccess(JetTestUtils.getHomeDirectory());
TestUtilsKt.invalidateLibraryCache(getProject());
}
@Override
@@ -25,6 +25,7 @@ import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase;
import com.intellij.util.Query;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.idea.test.JetLightProjectDescriptor;
import org.jetbrains.kotlin.idea.test.TestUtilsKt;
import org.jetbrains.kotlin.test.InTextDirectivesUtils;
import java.io.File;
@@ -34,6 +35,11 @@ import java.util.Collections;
import java.util.List;
public abstract class AbstractSearcherTest extends LightCodeInsightFixtureTestCase {
@Override
public void setUp() throws Exception {
super.setUp();
TestUtilsKt.invalidateLibraryCache(getProject());
}
protected PsiClass getPsiClass(String className) {
PsiClass psiClass = JavaPsiFacade.getInstance(getProject()).findClass(className, getGlobalScope());
@@ -17,19 +17,14 @@
package org.jetbrains.kotlin.j2k
import com.intellij.openapi.util.io.FileUtil
import java.io.File
import com.intellij.testFramework.LightPlatformTestCase
import com.intellij.openapi.application.ApplicationManager
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.util.Computable
import org.jetbrains.kotlin.diagnostics.Severity
import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages
import org.jetbrains.kotlin.psi.JetFile
import org.jetbrains.kotlin.idea.caches.resolve.analyzeFullyAndGetResult
import com.intellij.openapi.vfs.newvfs.impl.VfsRootAccess
import com.intellij.testFramework.LightPlatformTestCase
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase
import org.jetbrains.kotlin.idea.test.invalidateLibraryCache
import org.jetbrains.kotlin.idea.util.application.runWriteAction
import org.jetbrains.kotlin.test.JetTestUtils
import java.io.File
public abstract class AbstractJavaToKotlinConverterTest : LightCodeInsightFixtureTestCase() {
override fun setUp() {
@@ -37,6 +32,8 @@ public abstract class AbstractJavaToKotlinConverterTest : LightCodeInsightFixtur
VfsRootAccess.allowRootAccess(JetTestUtils.getHomeDirectory())
invalidateLibraryCache(project)
addFile("KotlinApi.kt", "kotlinApi")
addFile("JavaApi.java", "javaApi")
}