don't cache substitutors during processing of all candidates (blinking red code)

This commit is contained in:
Anna.Kozlova
2016-04-05 21:03:27 +02:00
parent 00fa1f8137
commit cd9c406260
3 changed files with 47 additions and 4 deletions
@@ -15,6 +15,8 @@
*/
package com.intellij.codeInsight.daemon.lambda;
import com.intellij.codeInsight.ExpectedTypeInfo;
import com.intellij.codeInsight.ExpectedTypesProvider;
import com.intellij.codeInsight.daemon.LightDaemonAnalyzerTestCase;
import com.intellij.openapi.projectRoots.Sdk;
import com.intellij.psi.*;
@@ -75,6 +77,17 @@ public class Java8ExpressionsCheckTest extends LightDaemonAnalyzerTestCase {
doTestAllMethodCallExpressions();
}
public void testNonCachingFolding() throws Exception {
final String filePath = BASE_PATH + "/" + getTestName(false) + ".java";
configureByFile(filePath);
PsiNewExpression newWithAnonym =
PsiTreeUtil.getParentOfType(getFile().findElementAt(getEditor().getCaretModel().getOffset()), PsiNewExpression.class);
ExpectedTypeInfo[] types = ExpectedTypesProvider.getExpectedTypes(newWithAnonym, false);
assertNotNull(types);
doTestConfiguredFile(false, false, filePath);
}
private void doTestCachedUnresolved() {
configureByFile(BASE_PATH + "/" + getTestName(false) + ".java");
PsiMethodCallExpression callExpression =