IJPL-578 Explicitly wait for smart mode in tests (tests/Java)

GitOrigin-RevId: f988e7c6f05e5026ef971ec3df3b279c49841e75
This commit is contained in:
Andrei.Kuznetsov
2024-01-31 00:01:04 +00:00
committed by intellij-monorepo-bot
parent 41fc6333e3
commit ef653e31ed
26 changed files with 87 additions and 5 deletions
@@ -14,6 +14,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.packaging.artifacts.Artifact;
import com.intellij.packaging.elements.PackagingElement;
import com.intellij.project.IntelliJProjectConfiguration;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.VfsTestUtil;
import org.jetbrains.annotations.Nullable;
@@ -93,9 +94,11 @@ public abstract class PackagingElementsTestCase extends ArtifactsTestCase {
protected static void addModuleLibrary(final Module module, final VirtualFile jar) {
ModuleRootModificationUtil.addModuleLibrary(module, jar.getUrl());
IndexingTestUtil.waitUntilIndexesAreReady(module.getProject());
}
protected static void addModuleDependency(final Module module, final Module dependency) {
ModuleRootModificationUtil.addDependency(module, dependency);
IndexingTestUtil.waitUntilIndexesAreReady(module.getProject());
}
}
@@ -15,6 +15,7 @@ import com.intellij.openapi.roots.ModuleRootModificationUtil;
import com.intellij.openapi.roots.OrderEnumerator;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.project.IntelliJProjectConfiguration;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.PsiTestUtil;
import org.jetbrains.annotations.NonNls;
@@ -83,10 +84,12 @@ public class FacetLibrariesValidatorTest extends FacetTestCase {
assertError("");
ModuleRootModificationUtil.addModuleLibrary(myModule, myFastUtilJar.getUrl());
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
myValidatorsManager.validate();
assertError("junit");
ModuleRootModificationUtil.addModuleLibrary(myModule, myJUnitJar.getUrl());
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
myValidatorsManager.validate();
validator.onFacetInitialized(createFacet());
@@ -28,6 +28,7 @@ import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.pom.java.LanguageLevel;
import com.intellij.testFramework.IdeaTestUtil;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.UsefulTestCase;
import com.intellij.testFramework.builders.JavaModuleFixtureBuilder;
import com.intellij.testFramework.fixtures.*;
@@ -79,6 +80,7 @@ public abstract class ClsGenericsHighlightingTest extends UsefulTestCase {
String contentUrl = VfsUtilCore.pathToUrl(myFixture.getTempDirPath());
model.addContentEntry(contentUrl).addSourceFolder(contentUrl, false);
});
IndexingTestUtil.waitUntilIndexesAreReady(myFixture.getProject());
}
protected static void commitLibraryModel(ModifiableRootModel model, String testDataPath, String @NotNull ... libraryPath) {
@@ -34,6 +34,7 @@ import com.intellij.psi.search.searches.ClassInheritorsSearch;
import com.intellij.psi.search.searches.MethodReferencesSearch;
import com.intellij.psi.util.PsiUtilCore;
import com.intellij.testFramework.IdeaTestUtil;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.testFramework.UsefulTestCase;
import com.intellij.testFramework.builders.JavaModuleFixtureBuilder;
@@ -97,6 +98,7 @@ public class MultipleJdksHighlightingTest extends UsefulTestCase {
ModuleRootModificationUtil.updateModel(myJava3Module, model -> model.addContentEntry(java3Root).addSourceFolder(java3Root, false));
ModuleRootModificationUtil.updateModel(myJava7Module, model -> model.addContentEntry(java7Root).addSourceFolder(java7Root, false));
ModuleRootModificationUtil.updateModel(myJava8Module, model -> model.addContentEntry(java8Root).addSourceFolder(java8Root, false));
IndexingTestUtil.waitUntilIndexesAreReady(myFixture.getProject());
}
private void addDependencies_37_78() {
@@ -35,6 +35,7 @@ import com.intellij.psi.search.scope.packageSet.NamedScopeManager;
import com.intellij.psi.search.scope.packageSet.NamedScopesHolder;
import com.intellij.psi.search.scope.packageSet.PatternPackageSet;
import com.intellij.testFramework.IdeaTestUtil;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.util.concurrency.AppExecutorUtil;
import com.intellij.util.ui.UIUtil;
import org.intellij.lang.annotations.Language;
@@ -145,6 +146,7 @@ public class AdvHighlightingTest extends DaemonAnalyzerTestCase {
WriteAction.runAndWait(() -> ProjectJdkTable.getInstance().addJdk(jdk171, getTestRootDisposable()));
ModuleRootModificationUtil.setModuleSdk(java5, jdk171);
ModuleRootModificationUtil.addDependency(java5, java4);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
configureByExistingFile(root.findFileByRelativePath("moduleJava5/com/Java5.java"));
Collection<HighlightInfo> infos = highlightErrors();
@@ -33,6 +33,7 @@ import com.intellij.openapi.vfs.JarFileSystem;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.platform.testFramework.io.ExternalResourcesChecker;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.PlatformTestUtil;
import com.intellij.util.SystemProperties;
import jetbrains.buildServer.messages.serviceMessages.ServiceMessage;
@@ -156,6 +157,7 @@ public abstract class AbstractTestFrameworkIntegrationTest extends BaseConfigura
VirtualFile jarRoot = JarFileSystem.getInstance().getJarRootForLocalFile(libJarLocal);
ModuleRootModificationUtil.addModuleLibrary(module, jarRoot.getUrl());
}
IndexingTestUtil.waitUntilIndexesAreReady(module.getProject());
}
protected static ArtifactRepositoryManager getRepoManager() {
@@ -20,6 +20,7 @@ import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiClass;
import com.intellij.testFramework.IdeaTestUtil;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.util.PathUtil;
import com.intellij.util.PathsList;
@@ -86,6 +87,7 @@ public class ApplicationModulePathTest extends BaseConfigurationTestCase {
Sdk jdk9 = IdeaTestUtil.getMockJdk9();
WriteAction.runAndWait(()-> ProjectJdkTable.getInstance().addJdk(jdk9, parentDisposable));
ModuleRootModificationUtil.setModuleSdk(module, jdk9);
IndexingTestUtil.waitUntilIndexesAreReady(module.getProject());
}
protected static VirtualFile getContentRoot(String path) {
@@ -91,6 +91,7 @@ public abstract class BaseConfigurationTestCase extends JavaProjectTestCase {
Module missingModule = createTempModule();
addDependency(module, missingModule);
ModuleManager.getInstance(myProject).disposeModule(missingModule);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
protected @NotNull Module createEmptyModule() {
@@ -108,6 +109,7 @@ public abstract class BaseConfigurationTestCase extends JavaProjectTestCase {
ModuleManager moduleManager = ModuleManager.getInstance(project);
Module result = WriteAction.compute(() -> moduleManager.newModule(tempPath, StdModuleTypes.JAVA.getId()));
PlatformTestUtil.saveProject(project);
IndexingTestUtil.waitUntilIndexesAreReady(project);
return result;
}
@@ -11,6 +11,7 @@ import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiPackage;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.testFramework.TemporaryDirectory;
import com.intellij.testFramework.VfsTestUtil;
@@ -61,6 +62,7 @@ final class TestSources {
Module tempModule = BaseConfigurationTestCase.createTempModule(tempDir, myProject);
ModuleRootModificationUtil.addDependency(myModule, tempModule);
disposeModule(tempModule);
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
}
private void disposeModule(@NotNull Module tempModule) {
@@ -69,10 +71,12 @@ final class TestSources {
public void copyJdkFrom(@NotNull Module module) {
ModuleRootModificationUtil.setModuleSdk(myModule, ModuleRootManager.getInstance(module).getSdk());
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
}
public void addLibrary(@NotNull VirtualFile lib) {
ModuleRootModificationUtil.addModuleLibrary(myModule, lib.getUrl());
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
}
public @NotNull VirtualFile createPackageDir(@NotNull String packageName) {
@@ -28,6 +28,7 @@ import com.intellij.openapi.util.Computable;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaProjectTestCase;
import java.util.Arrays;
@@ -61,6 +62,7 @@ public class ProjectLibrariesTest extends JavaProjectTestCase {
ApplicationManager.getApplication().runWriteAction(() -> {
model.addRoot(myRoot, OrderRootType.CLASSES);
model.commit();
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
});
assertNotNull(getJavaFacade().findClass("pack.MyClass", GlobalSearchScope.moduleWithDependenciesAndLibrariesScope(myModule)));
@@ -77,13 +79,17 @@ public class ProjectLibrariesTest extends JavaProjectTestCase {
ApplicationManager.getApplication().runWriteAction(() -> {
libModel.addRoot(myRoot, OrderRootType.CLASSES);
libModel.commit();
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
});
assertNotNull(getJavaFacade().findClass("pack.MyClass", GlobalSearchScope.moduleWithDependenciesAndLibrariesScope(myModule)));
assertTrue(Arrays.asList(moduleModel.orderEntries().librariesOnly().classes().getRoots()).contains(myRoot));
}
finally {
ApplicationManager.getApplication().runWriteAction(() -> moduleModel.commit());
ApplicationManager.getApplication().runWriteAction(() -> {
moduleModel.commit();
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
});
}
assertNotNull(getJavaFacade().findClass("pack.MyClass", GlobalSearchScope.moduleWithDependenciesAndLibrariesScope(myModule)));
@@ -24,6 +24,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiClass;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import java.io.File;
@@ -42,6 +43,7 @@ public class FindClassInDeepPackagesTest extends JavaPsiTestCase {
});
assertNotNull(classesRoot);
ModuleRootModificationUtil.addModuleLibrary(myModule, classesRoot.getUrl());
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
public void testSRC() {
@@ -24,6 +24,7 @@ import com.intellij.psi.PsiDirectory;
import com.intellij.psi.impl.JavaPsiImplementationHelper;
import com.intellij.psi.util.PsiUtil;
import com.intellij.testFramework.IdeaTestUtil;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.testFramework.fixtures.JavaCodeInsightFixtureTestCase;
import com.intellij.testFramework.fixtures.impl.TempDirTestFixtureImpl;
@@ -32,6 +33,7 @@ public class JavaDirectoryServiceHeavyTest extends JavaCodeInsightFixtureTestCas
public void testCreatingEnumInLanguageLevel3Project() {
LanguageLevelProjectExtension.getInstance(getProject()).setLanguageLevel(LanguageLevel.JDK_1_3);
IdeaTestUtil.setModuleLanguageLevel(getModule(), LanguageLevel.JDK_1_7);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
PsiDirectory dir = getPsiManager().findDirectory(myFixture.getTempDirFixture().getFile(""));
PsiClass createdEnum = JavaDirectoryService.getInstance().createEnum(dir, "Foo");
@@ -49,6 +51,7 @@ public class JavaDirectoryServiceHeavyTest extends JavaCodeInsightFixtureTestCas
LanguageLevelProjectExtension.getInstance(getProject()).setLanguageLevel(LanguageLevel.JDK_1_3);
IdeaTestUtil.setModuleLanguageLevel(getModule(), LanguageLevel.JDK_1_7);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
assertEquals(LanguageLevel.JDK_1_3, JavaDirectoryService.getInstance().getLanguageLevel(getPsiManager().findDirectory(root)));
assertEquals(LanguageLevel.JDK_1_3, JavaPsiImplementationHelper.getInstance(getProject()).getEffectiveLanguageLevel(root));
@@ -23,6 +23,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiMethod;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import java.io.File;
@@ -101,5 +102,6 @@ public class LibraryOrderTest extends JavaPsiTestCase {
private void addLibraryWithSourcePath(String name, VirtualFile libClasses, final VirtualFile libSource) {
ModuleRootModificationUtil.addModuleLibrary(myModule, name, Collections.singletonList(libClasses.getUrl()),
Collections.singletonList(libSource.getUrl()));
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
}
}
@@ -25,6 +25,7 @@ import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.psi.search.PackageScope;
import com.intellij.psi.util.FindClassUtil;
import com.intellij.testFramework.DumbModeTestUtils;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import com.intellij.testFramework.PsiTestUtil;
import org.jetbrains.jps.model.java.JavaResourceRootType;
@@ -97,6 +98,7 @@ public class FindClassTest extends JavaPsiTestCase {
content.removeExcludeFolder(content.getExcludeFolders()[0]);
rootModel.commit();
});
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
PsiClass psiClass = myJavaFacade.findClass("p.A", GlobalSearchScope.allScope(myProject));
assertNotNull(psiClass);
@@ -198,6 +200,7 @@ public class FindClassTest extends JavaPsiTestCase {
newModules.add(modifiableModel.newModule("b.iml", StdModuleTypes.JAVA.getId()));
modifiableModel.commit();
});
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
return newModules;
}
@@ -6,6 +6,7 @@ import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiDocumentManager;
import com.intellij.psi.PsiFile;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import com.intellij.testFramework.PsiTestUtil;
@@ -29,6 +30,7 @@ public class SourceRootAddedAsLibraryRootTest extends JavaPsiTestCase {
private void changeRoots() {
ModuleRootModificationUtil.addModuleLibrary(myModule, myDir.getUrl());
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
}
public void testBug() {
@@ -21,6 +21,7 @@ import com.intellij.psi.impl.PsiTreeChangePreprocessor;
import com.intellij.psi.impl.file.impl.FileManager;
import com.intellij.psi.impl.file.impl.FileManagerImpl;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.testFramework.SkipSlowTestLocally;
@@ -71,6 +72,7 @@ public class PsiEventsTest extends JavaPsiTestCase {
ModuleRootModificationUtil.addModuleLibrary(myModule, myClsDir1.getUrl());
PsiTestUtil.addSourceRoot(myModule, mySrcDir3);
});
IndexingTestUtil.waitUntilIndexesAreReady(myProject);
}
public void testCreateFile() {
@@ -7,6 +7,7 @@ import com.intellij.openapi.roots.ModuleRootModificationUtil
import com.intellij.openapi.vfs.VfsUtil
import com.intellij.psi.JavaPsiFacade
import com.intellij.psi.search.GlobalSearchScope
import com.intellij.testFramework.IndexingTestUtil
import com.intellij.testFramework.fixtures.JavaCodeInsightFixtureTestCase
import com.intellij.util.io.directoryContent
import com.intellij.util.io.generateInVirtualTempDir
@@ -40,6 +41,7 @@ class ResolveInLibraries2Test : JavaCodeInsightFixtureTestCase() {
ModuleRootModificationUtil.addModuleLibrary(module, "nano1", getJarRootUrls("${libsDir.path}/foo.jar"), getJarRootUrls("${libsDir.path}/foo-src.zip"))
ModuleRootModificationUtil.addModuleLibrary(module, "nano2", getJarRootUrls(jarCopy.path), getJarRootUrls(srcCopy.path))
IndexingTestUtil.waitUntilIndexesAreReady(project)
val parsers = JavaPsiFacade.getInstance(project).findClasses("foo.Foo", GlobalSearchScope.allScope(project))
assertEquals(2, parsers.size)
@@ -13,6 +13,7 @@ import com.intellij.psi.PsiReference;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.psi.search.SearchScope;
import com.intellij.psi.search.searches.ReferencesSearch;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.usageView.UsageInfo;
@@ -50,6 +51,7 @@ public class SearchInLibsTest extends JavaPsiTestCase {
List<String> sourceRoots = Arrays.asList(libSrcRoot.getUrl(), libSrc2Root.getUrl());
List<String> classesRoots = Collections.singletonList(libClassesRoot.getUrl());
ModuleRootModificationUtil.addModuleLibrary(myModule, "lib", classesRoots, sourceRoots);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
public void testFindUsagesInProject() {
@@ -13,6 +13,7 @@ import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.vfs.ex.temp.TempFileSystem
import com.intellij.pom.java.LanguageLevel
import com.intellij.testFramework.IdeaTestUtil
import com.intellij.testFramework.IndexingTestUtil
import com.intellij.testFramework.LightPlatformTestCase
import com.intellij.testFramework.fixtures.DefaultLightProjectDescriptor
import org.jetbrains.jps.model.java.JavaResourceRootType
@@ -106,6 +107,7 @@ object MultiModuleJava9ProjectDescriptor : DefaultLightProjectDescriptor() {
ModuleRootModificationUtil.addModuleLibrary(m6, "${libDir}/lib-named-2.0.jar!/")
ModuleRootModificationUtil.addModuleLibrary(m8, "lib-with-module-info", listOf("${libDir}/lib-with-module-info.jar!/"), listOf("${libDir}/lib-with-module-info-sources.zip!/src"))
}
IndexingTestUtil.waitUntilIndexesAreReady(project)
}
private fun makeModule(project: Project, descriptor: ModuleDescriptor): Module {
@@ -15,6 +15,7 @@ import com.intellij.project.ProjectKt;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiClass;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaProjectTestCase;
import com.intellij.testFramework.PsiTestUtil;
@@ -48,6 +49,7 @@ public class ExportingModulesTest extends JavaProjectTestCase {
ModuleRootModificationUtil.addDependency(moduleC[0], moduleB[0]);
});
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
final PsiClass pCClass =
JavaPsiFacade.getInstance(myProject).findClass("p.C", GlobalSearchScope.moduleWithDependenciesAndLibrariesScope(moduleC[0]));
@@ -3,6 +3,7 @@ package com.intellij.roots
import com.intellij.openapi.application.runWriteActionAndWait
import com.intellij.openapi.module.LanguageLevelUtil
import com.intellij.openapi.module.Module
import com.intellij.openapi.project.Project
import com.intellij.openapi.roots.CompilerModuleExtension
import com.intellij.openapi.roots.CompilerProjectExtension
@@ -12,6 +13,7 @@ import com.intellij.openapi.vfs.VfsUtilCore
import com.intellij.pom.java.LanguageLevel
import com.intellij.testFramework.ApplicationRule
import com.intellij.testFramework.IdeaTestUtil
import com.intellij.testFramework.IndexingTestUtil
import com.intellij.testFramework.rules.ProjectModelRule
import com.intellij.util.io.systemIndependentPath
import org.assertj.core.api.Assertions.assertThat
@@ -29,15 +31,25 @@ class JavaModuleExtensionsTest {
@get:Rule
val projectModel = ProjectModelRule()
private fun setLanguageLevel(module: Module, newLevel: LanguageLevel) {
IdeaTestUtil.setModuleLanguageLevel(module, newLevel)
IndexingTestUtil.waitUntilIndexesAreReady(projectModel.project)
}
private fun setLanguageLevel(project: Project, newLevel: LanguageLevel) {
LanguageLevelProjectExtension.getInstance(project).languageLevel = newLevel
IndexingTestUtil.waitUntilIndexesAreReady(project)
}
@Test
fun `change custom language level`() {
val module = projectModel.createModule()
IdeaTestUtil.setModuleLanguageLevel(module, LanguageLevel.JDK_1_8)
setLanguageLevel(module, LanguageLevel.JDK_1_8)
assertThat(LanguageLevelUtil.getCustomLanguageLevel(module)).isEqualTo(LanguageLevel.JDK_1_8)
val listener = MyLanguageLevelListener()
listener.subscribe(projectModel.project)
IdeaTestUtil.setModuleLanguageLevel(module, LanguageLevel.JDK_11)
setLanguageLevel(module, LanguageLevel.JDK_11)
assertThat(LanguageLevelUtil.getCustomLanguageLevel(module)).isEqualTo(LanguageLevel.JDK_11)
listener.assertInvoked()
}
@@ -46,7 +58,7 @@ class JavaModuleExtensionsTest {
fun `change project language level`() {
val module = projectModel.createModule()
runWriteActionAndWait {
LanguageLevelProjectExtension.getInstance(projectModel.project).languageLevel = LanguageLevel.JDK_1_8
setLanguageLevel(projectModel.project, LanguageLevel.JDK_1_8)
assertThat(LanguageLevelUtil.getCustomLanguageLevel(module)).isNull()
assertThat(LanguageLevelUtil.getEffectiveLanguageLevel(module)).isEqualTo(LanguageLevel.JDK_1_8)
}
@@ -54,7 +66,7 @@ class JavaModuleExtensionsTest {
val listener = MyLanguageLevelListener()
listener.subscribe(projectModel.project)
runWriteActionAndWait {
LanguageLevelProjectExtension.getInstance(projectModel.project).languageLevel = LanguageLevel.JDK_11
setLanguageLevel(projectModel.project, LanguageLevel.JDK_11)
assertThat(LanguageLevelUtil.getEffectiveLanguageLevel(module)).isEqualTo(LanguageLevel.JDK_11)
}
listener.assertInvoked()
@@ -20,6 +20,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.project.ProjectKt;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaModuleTestCase;
import com.intellij.util.messages.MessageBusConnection;
import org.jetbrains.annotations.NotNull;
@@ -61,6 +62,7 @@ public class MultiModuleEditingTest extends JavaModuleTestCase {
//noinspection SSBasedInspection
moduleListener.assertCorrectEvents(new String[0][]);
ApplicationManager.getApplication().runWriteAction(modifiableModel::commit);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
assertEquals(2, moduleManager.getModules().length);
@@ -75,6 +77,7 @@ public class MultiModuleEditingTest extends JavaModuleTestCase {
assertEquals("Changes are not applied until commit", 2, moduleManager.getModules().length);
moduleListener.assertCorrectEvents(new String[][]{{"+a", "+b"}});
ApplicationManager.getApplication().runWriteAction(modifiableModel::commit);
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
assertEquals(0, moduleManager.getModules().length);
@@ -106,6 +109,7 @@ public class MultiModuleEditingTest extends JavaModuleTestCase {
contentEntryB.addSourceFolder(getVirtualFileInTestData("b/src"), false);
ApplicationManager.getApplication().runWriteAction(() -> ModifiableModelCommitter.multiCommit(new ModifiableRootModel[]{rootModelB, rootModelA}, moduleModel));
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
final JavaPsiFacade psiManager = getJavaFacade();
@@ -140,6 +144,7 @@ public class MultiModuleEditingTest extends JavaModuleTestCase {
rootModelB.addModuleOrderEntry(moduleC);
moduleModel.disposeModule(moduleC);
ApplicationManager.getApplication().runWriteAction(() -> ModifiableModelCommitter.multiCommit(new ModifiableRootModel[]{rootModelB}, moduleModel));
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
final ModuleRootManager rootManagerB = ModuleRootManager.getInstance(moduleB);
@@ -158,6 +163,7 @@ public class MultiModuleEditingTest extends JavaModuleTestCase {
assertEquals("c", moduleModel.getActualName(moduleA));
assertSame(moduleA, moduleModel.getModuleToBeRenamed("c"));
ApplicationManager.getApplication().runWriteAction(() -> moduleModel.commit());
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
assertEquals(1, rootManagerB.getDependencies().length);
@@ -20,6 +20,7 @@ import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiClass;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.roots.ModuleRootManagerTestCase;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.util.ui.UIUtil;
import org.jdom.Element;
@@ -140,6 +141,7 @@ public class LibraryTest extends ModuleRootManagerTestCase {
commit(model);
ModuleRootModificationUtil.updateModel(getModule(), m -> m.addLibraryEntry(library));
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
assertSize(1, library.getUrls(OrderRootType.CLASSES));
assertSameElements(library.getUrls(OrderRootType.CLASSES), libDir.getUrl());
@@ -156,6 +158,7 @@ public class LibraryTest extends ModuleRootManagerTestCase {
UIUtil.dispatchAllInvocationEvents();
libDir.refresh(false, false);
UIUtil.dispatchAllInvocationEvents();
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
assertNull(libDir.findChild("lib.jar"));
aClass = JavaPsiFacade.getInstance(getProject()).findClass("l.InLib", GlobalSearchScope.allScope(getProject()));
@@ -163,10 +166,12 @@ public class LibraryTest extends ModuleRootManagerTestCase {
copy(libJar, libDir, libJar.getName());
UIUtil.dispatchAllInvocationEvents();
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
aClass = JavaPsiFacade.getInstance(getProject()).findClass("l.InLib", GlobalSearchScope.allScope(getProject()));
assertNotNull(aClass);
ModuleRootModificationUtil.updateModel(getModule(), m -> m.removeOrderEntry(m.findLibraryOrderEntry(library)));
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
aClass = JavaPsiFacade.getInstance(getProject()).findClass("l.InLib", GlobalSearchScope.allScope(getProject()));
assertNull(aClass);
}
@@ -185,6 +190,7 @@ public class LibraryTest extends ModuleRootManagerTestCase {
commit(model);
ModuleRootModificationUtil.updateModel(getModule(), m -> m.addLibraryEntry(library));
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
assertSize(1, library.getUrls(OrderRootType.CLASSES));
assertSameElements(library.getUrls(OrderRootType.CLASSES), libUrl);
@@ -221,6 +227,7 @@ public class LibraryTest extends ModuleRootManagerTestCase {
assertNotNull(libJar);
UIUtil.dispatchAllInvocationEvents();
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
aClass = JavaPsiFacade.getInstance(getProject()).findClass("l.InLib", GlobalSearchScope.allScope(getProject()));
assertNotNull(aClass);
}
@@ -7,6 +7,7 @@ import com.intellij.openapi.roots.ModuleRootModificationUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.project.IntelliJProjectConfiguration;
import com.intellij.psi.*;
import com.intellij.testFramework.IndexingTestUtil;
import com.intellij.testFramework.JavaPsiTestCase;
import com.intellij.testFramework.PsiTestUtil;
import com.intellij.testIntegration.TestFinderHelper;
@@ -23,6 +24,7 @@ public class TestFinderHelperTest extends JavaPsiTestCase {
PsiTestUtil.addSourceRoot(myModule, myContentRootDir);
IntelliJProjectConfiguration.LibraryRoots junit4Library = IntelliJProjectConfiguration.getProjectLibrary("JUnit4");
ModuleRootModificationUtil.addModuleLibrary(myModule, "JUnit4", junit4Library.getClassesUrls(), junit4Library.getSourcesUrls());
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
}
public void testNoTestsForClass() {
@@ -1290,6 +1290,7 @@ public class IndexTest extends JavaCodeInsightFixtureTestCase {
final ExactFileNameMatcher matcher = new ExactFileNameMatcher("Foo.groovy");
try {
WriteCommandAction.runWriteCommandAction(getProject(), () -> FileTypeManager.getInstance().associate(JavaFileType.INSTANCE, matcher));
IndexingTestUtil.waitUntilIndexesAreReady(getProject());
assertEquals(JavaFileType.INSTANCE, FileTypeIndex.getIndexedFileType(virtualFile, getProject()));
stub = StubTreeLoader.getInstance().readFromVFile(getProject(), virtualFile);
@@ -12,6 +12,7 @@ import com.intellij.psi.JavaPsiFacade
import com.intellij.psi.PsiJavaFile
import com.intellij.psi.PsiManager
import com.intellij.psi.search.GlobalSearchScope
import com.intellij.testFramework.IndexingTestUtil
import com.intellij.testFramework.PlatformTestUtil
import com.intellij.testFramework.fixtures.JavaCodeInsightFixtureTestCase
import com.intellij.util.ThrowableRunnable
@@ -87,15 +88,18 @@ class RequestedToRebuildIndexTest : JavaCodeInsightFixtureTestCase() {
assertEquals("File was not reindexed after indexing on creation", 0, countingIndex.counter.get())
UnindexedFilesScanner(myFixture.project).queue()
IndexingTestUtil.waitUntilIndexesAreReady(myFixture.project)
assertEquals("File was not reindexed after full project reindex request", 0, countingIndex.counter.get())
fileBasedIndex.requestRebuild(countingIndex.name)
IndexingTestUtil.waitUntilIndexesAreReady(myFixture.project)
assertCountingIndexBehavesCorrectlyAfterRebuildRequest(countingIndex, fileA, fileB)
partialReindex.accept(fileA)
assertCountingIndexBehavesCorrectlyAfterRebuildRequest(countingIndex, fileA, fileB)
PlatformTestUtil.dispatchAllEventsInIdeEventQueue()
IndexingTestUtil.waitUntilIndexesAreReady(myFixture.project)
assertTrue("File was reindexed on requesting index rebuild", countingIndex.counter.get() > 1)
assertEquals("File data is available after full reindex", countingIndex.getDefaultValue(),
fileBasedIndex.getFileData(countingIndex.name, fileA, myFixture.project))