compare primitive types with equals as type annotations could spoil them (IDEA-147399)

This commit is contained in:
Anna Kozlova
2015-11-05 17:30:30 +01:00
parent 7a2ae3a051
commit b52bf6b5c0
9 changed files with 31 additions and 21 deletions
@@ -75,6 +75,16 @@ public class InferredTypeTest extends LightCodeInsightFixtureTestCase {
assertTrue(ensureNotCached.getCanonicalText(), ensureNotCached.equalsToText("java.util.List<java.lang.Integer>"));
}
public void testAnnotatedVoidReturnType() throws Exception {
myFixture.addClass("@java.lang.annotation.Target(value={java.lang.annotation.ElementType.TYPE_USE}) @interface D {}");
final PsiJavaFile file = (PsiJavaFile)myFixture.addFileToProject("R.java", "public interface R {@D void run();}");
final PsiClass psiClass = file.getClasses()[0];
final PsiMethod method = psiClass.getMethods()[0];
assertFalse(PsiType.VOID == method.getReturnType());
myFixture.configureByText("a.java", "class A {{R r = () -> {};}} ");
myFixture.checkHighlighting(false, false, false);
}
@NotNull
@Override
protected LightProjectDescriptor getProjectDescriptor() {