Workaround for failing tests (see comments in the code)
This commit is contained in:
@@ -16,8 +16,10 @@
|
|||||||
|
|
||||||
package org.jetbrains.jet.checkers;
|
package org.jetbrains.jet.checkers;
|
||||||
|
|
||||||
|
import com.intellij.ProjectTopics;
|
||||||
import com.intellij.codeInsight.daemon.LightDaemonAnalyzerTestCase;
|
import com.intellij.codeInsight.daemon.LightDaemonAnalyzerTestCase;
|
||||||
import com.intellij.openapi.projectRoots.Sdk;
|
import com.intellij.openapi.projectRoots.Sdk;
|
||||||
|
import com.intellij.openapi.roots.impl.ModuleRootEventImpl;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.jet.plugin.PluginTestCaseBase;
|
import org.jetbrains.jet.plugin.PluginTestCaseBase;
|
||||||
import org.jetbrains.jet.test.generator.SimpleTestClassModel;
|
import org.jetbrains.jet.test.generator.SimpleTestClassModel;
|
||||||
@@ -32,6 +34,20 @@ import java.util.Arrays;
|
|||||||
*/
|
*/
|
||||||
public abstract class AbstractJetPsiCheckerTest extends LightDaemonAnalyzerTestCase {
|
public abstract class AbstractJetPsiCheckerTest extends LightDaemonAnalyzerTestCase {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void tearDown() throws Exception {
|
||||||
|
super.tearDown();
|
||||||
|
/*
|
||||||
|
* TODO: remove this when fixed in IDEA
|
||||||
|
* super.tearDown() calls cleanupForNextTest() on PsiManagerImpl, which invalidates a cache of view providers
|
||||||
|
* this affects ExternalAnnotationsManagerImpl making XmlFile instances cached in it invalid
|
||||||
|
* this results in external annotations being not found, unless we invalidate the cache in ExternalAnnotationsManagerImpl.
|
||||||
|
* Currently, sending this funny event is the only way (apart from reflection) to invalidate that cache.
|
||||||
|
* The problem will be fixed in IDEA soon (hopefully).
|
||||||
|
*/
|
||||||
|
getProject().getMessageBus().syncPublisher(ProjectTopics.PROJECT_ROOTS).rootsChanged(new ModuleRootEventImpl(getProject(), true));
|
||||||
|
}
|
||||||
|
|
||||||
public void doTest(@NotNull String filePath) throws Exception {
|
public void doTest(@NotNull String filePath) throws Exception {
|
||||||
doTest(filePath, true, false);
|
doTest(filePath, true, false);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user