From 45959b751cfd29b948b53e013ec8c2afb6a92c84 Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 26 Jun 2013 16:15:13 +0200 Subject: [PATCH] don't leak choose by name popup in tests --- .../com/intellij/navigation/ChooseByNameTest.groovy | 3 +++ .../intellij/ide/util/gotoByName/ChooseByNamePopup.java | 7 ++----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy b/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy index 78d58bc076b3..4a88a81e426c 100644 --- a/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy +++ b/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy @@ -2,7 +2,9 @@ package com.intellij.navigation import com.intellij.ide.util.gotoByName.ChooseByNameModel import com.intellij.ide.util.gotoByName.ChooseByNamePopup import com.intellij.ide.util.gotoByName.GotoClassModel2 +import com.intellij.openapi.Disposable import com.intellij.openapi.application.ModalityState +import com.intellij.openapi.util.Disposer import com.intellij.psi.PsiElement import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase import com.intellij.util.Consumer @@ -22,6 +24,7 @@ class ChooseByNameTest extends LightCodeInsightFixtureTestCase { private List createPopup(ChooseByNameModel model, String text) { def popup = ChooseByNamePopup.createPopup(project, model, (PsiElement)null, "") + Disposer.register(testRootDisposable, { popup.close(false) } as Disposable) List elements = ['empty'] def semaphore = new Semaphore() semaphore.down() diff --git a/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java b/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java index b88af0dde5fc..aa5302ca4b1c 100644 --- a/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java +++ b/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java @@ -18,6 +18,7 @@ package com.intellij.ide.util.gotoByName; import com.intellij.featureStatistics.FeatureUsageTracker; import com.intellij.ide.ui.UISettings; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.keymap.KeymapUtil; import com.intellij.openapi.project.Project; @@ -255,14 +256,10 @@ public class ChooseByNamePopup extends ChooseByNameBase implements ChooseByNameP } cleanupUI(isOk); + if (ApplicationManager.getApplication().isUnitTestMode()) return; myActionListener.onClose(); } - @Nullable - public static ChooseByNamePopup getActivePopup(@NotNull final Project project) { - return CHOOSE_BY_NAME_POPUP_IN_PROJECT_KEY.get(project); - } - private void cleanupUI(boolean ok) { if (myTextPopup != null) { if (ok) {