EA-769294 - PE: DataValidators.reportPsiElementOnEdt

test for ItemChosenCallback

GitOrigin-RevId: 3b557cd6b0a5c3fde01c1af1c10cab205a87e707
This commit is contained in:
Dmitry Avdeev
2023-02-02 14:40:54 +01:00
committed by intellij-monorepo-bot
parent bc84f9421c
commit c0fff00138
4 changed files with 30 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
package foo;
class A {}
class <caret>B extends A {}
class C extends A {}

View File

@@ -0,0 +1,7 @@
package foo;
class <caret>A {}
class B extends A {}
class C extends A {}

View File

@@ -35,6 +35,7 @@ import com.intellij.psi.*;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.ui.UIUtil;
import org.jetbrains.annotations.NotNull;
import java.util.List;
@@ -142,6 +143,17 @@ public class JavaGotoSuperTest extends LightDaemonAnalyzerTestCase {
checkResultByFile(getBasePath() + "SiblingInheritance.java");
}
public void testGoToImplementations() {
configureByFile(getBasePath() + "GoToImplementations.java");
AnAction action = ActionManager.getInstance().getAction(IdeActions.ACTION_GOTO_IMPLEMENTATION);
AnActionEvent event = AnActionEvent.createFromAnAction(action, null, "", DataManager.getInstance().getDataContextFromFocus().getResultSync());
action.update(event);
assertTrue(event.getPresentation().isEnabledAndVisible());
action.actionPerformed(event);
UIUtil.dispatchAllInvocationEvents();
checkResultByFile(getBasePath() + "GoToImplementations.after.java");
}
public void testSiblingInheritanceAndGenerics() {
configureByFile(getBasePath() + "SiblingInheritanceAndGenerics.java");
AnAction action = ActionManager.getInstance().getAction(IdeActions.ACTION_GOTO_SUPER);

View File

@@ -13,6 +13,7 @@ import com.intellij.navigation.ItemPresentation;
import com.intellij.navigation.NavigationItem;
import com.intellij.navigation.TargetPresentation;
import com.intellij.openapi.actionSystem.ex.ActionUtil;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ReadAction;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor;
@@ -209,6 +210,9 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler {
else {
showPopup.consume(popup);
}
if (ApplicationManager.getApplication().isUnitTestMode()) {
popup.closeOk(null);
}
}
@NotNull