fix "stale start offset" completion exceptions caused by missing injected<->host offset recalculation when inserting items

This commit is contained in:
peter
2014-09-30 17:23:50 +02:00
parent 1862789caf
commit c90cec5533
2 changed files with 31 additions and 26 deletions
@@ -19,6 +19,7 @@ import com.intellij.codeInsight.daemon.DaemonAnalyzerTestCase;
import com.intellij.codeInsight.lookup.LookupElement;
import com.intellij.codeInsight.lookup.LookupManager;
import com.intellij.codeInsight.lookup.impl.LookupImpl;
import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil;
import com.intellij.testFramework.PlatformTestCase;
import com.intellij.util.Function;
import com.intellij.util.containers.ContainerUtil;
@@ -63,7 +64,8 @@ public abstract class CompletionTestCase extends DaemonAnalyzerTestCase {
}
protected void complete(final int time) {
new CodeCompletionHandlerBase(myType).invokeCompletion(myProject, myEditor, time);
new CodeCompletionHandlerBase(myType).invokeCompletion(myProject, InjectedLanguageUtil
.getEditorForInjectedLanguageNoCommit(myEditor, getFile()), time);
LookupImpl lookup = (LookupImpl)LookupManager.getActiveLookup(myEditor);
myItems = lookup == null ? null : lookup.getItems().toArray(new LookupElement[lookup.getItems().size()]);