From 06dbabe0984a5ec955f8a0fe3b24af1cf536d052 Mon Sep 17 00:00:00 2001 From: Alexander Lobas Date: Wed, 24 Dec 2014 17:16:08 +0300 Subject: [PATCH] OC-11351 Parameter info for Swift --- .../codeInsight/ParameterInfoTest.java | 16 ++------------ .../MockUpdateParameterInfoContext.java | 21 ++++++++++++++++--- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/ParameterInfoTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/ParameterInfoTest.java index abf7f3880c9c..929c1463b979 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/ParameterInfoTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/ParameterInfoTest.java @@ -28,7 +28,6 @@ import com.intellij.testFramework.LightCodeInsightTestCase; import com.intellij.testFramework.utils.parameterInfo.MockCreateParameterInfoContext; import com.intellij.testFramework.utils.parameterInfo.MockParameterInfoUIContext; import com.intellij.testFramework.utils.parameterInfo.MockUpdateParameterInfoContext; -import com.intellij.util.ArrayUtilRt; import com.intellij.util.Function; import junit.framework.Assert; @@ -104,21 +103,10 @@ public class ParameterInfoTest extends LightCodeInsightTestCase { assertEquals(2, itemsToShow.length); assertTrue(itemsToShow[0] instanceof MethodCandidateInfo); final ParameterInfoUIContextEx parameterContext = ParameterInfoComponent.createContext(itemsToShow, myEditor, handler, -1); - final Boolean [] enabled = new Boolean[itemsToShow.length]; - final MockUpdateParameterInfoContext updateParameterInfoContext = new MockUpdateParameterInfoContext(myEditor, myFile){ - @Override - public Object[] getObjectsToView() { - return itemsToShow; - } - - @Override - public void setUIComponentEnabled(int index, boolean b) { - enabled[index] = b; - } - }; + final MockUpdateParameterInfoContext updateParameterInfoContext = new MockUpdateParameterInfoContext(myEditor, myFile, itemsToShow); updateParameterInfoContext.setParameterOwner(list); handler.updateParameterInfo(list, updateParameterInfoContext); - assertTrue(ArrayUtilRt.find(enabled, Boolean.TRUE) > -1); + assertTrue(updateParameterInfoContext.isUIComponentEnabled(0) || updateParameterInfoContext.isUIComponentEnabled(1)); } public void testAfterGenericsInsideCall() throws Exception { diff --git a/platform/testFramework/src/com/intellij/testFramework/utils/parameterInfo/MockUpdateParameterInfoContext.java b/platform/testFramework/src/com/intellij/testFramework/utils/parameterInfo/MockUpdateParameterInfoContext.java index 25679f485eb6..a1bfed07dc5b 100644 --- a/platform/testFramework/src/com/intellij/testFramework/utils/parameterInfo/MockUpdateParameterInfoContext.java +++ b/platform/testFramework/src/com/intellij/testFramework/utils/parameterInfo/MockUpdateParameterInfoContext.java @@ -22,6 +22,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.util.ArrayUtil; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * @author gregsh @@ -32,10 +33,18 @@ public class MockUpdateParameterInfoContext implements UpdateParameterInfoContex private PsiElement myParameterOwner; private Object myHighlightedParameter; private int myCurrentParameter; + private final Object[] myItems; + private final boolean[] myCompEnabled; public MockUpdateParameterInfoContext(@NotNull Editor editor, @NotNull PsiFile file) { + this(editor, file, null); + } + + public MockUpdateParameterInfoContext(@NotNull Editor editor, @NotNull PsiFile file, @Nullable Object[] items) { myEditor = editor; myFile = file; + myItems = items == null ? ArrayUtil.EMPTY_OBJECT_ARRAY : items; + myCompEnabled = items == null ? null : new boolean[items.length]; } public void removeHint() {} @@ -58,16 +67,22 @@ public class MockUpdateParameterInfoContext implements UpdateParameterInfoContex return myCurrentParameter; } - public boolean isUIComponentEnabled(int index) { return false; } + public boolean isUIComponentEnabled(int index) { + return myCompEnabled != null && myCompEnabled[index]; + } - public void setUIComponentEnabled(int index, boolean b) {} + public void setUIComponentEnabled(int index, boolean b) { + if (myCompEnabled != null) { + myCompEnabled[index] = b; + } + } public int getParameterListStart() { return myEditor.getCaretModel().getOffset(); } public Object[] getObjectsToView() { - return ArrayUtil.EMPTY_OBJECT_ARRAY; + return myItems; } public Project getProject() {