From dcd9e3d954f4342c2efae8497db5feb94326135b Mon Sep 17 00:00:00 2001 From: Mikhail Pyltsin Date: Fri, 21 Jul 2023 14:19:36 +0200 Subject: [PATCH] [java-completion] IJ-CR-111599 IDEA-324653 Completion for objects with enums. Add test that it doesn't work for old Java GitOrigin-RevId: 32b02cb0092b53093cf63dbea95df0c2e2e74724 --- ...alifierEnumConstantInSwitchWithObjectInJava20.java | 11 +++++++++++ ...rEnumConstantInSwitchWithObjectInJava20_after.java | 11 +++++++++++ .../completion/NormalSwitchCompletionTest.java | 6 +++++- 3 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20.java create mode 100644 java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20_after.java diff --git a/java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20.java b/java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20.java new file mode 100644 index 000000000000..2c1b29d5093c --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20.java @@ -0,0 +1,11 @@ +class Main { + + public enum En { + HHHH + } + public void foo(Object o) { + switch (o) { + case En.HH + } + }} + diff --git a/java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20_after.java b/java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20_after.java new file mode 100644 index 000000000000..2c1b29d5093c --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/normal/QualifierEnumConstantInSwitchWithObjectInJava20_after.java @@ -0,0 +1,11 @@ +class Main { + + public enum En { + HHHH + } + public void foo(Object o) { + switch (o) { + case En.HH + } + }} + diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/NormalSwitchCompletionTest.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/NormalSwitchCompletionTest.java index 30ef2ed87544..8369cd07150e 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/NormalSwitchCompletionTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/NormalSwitchCompletionTest.java @@ -87,8 +87,12 @@ public class NormalSwitchCompletionTest extends NormalCompletionTestCase { public void testQualifierEnumConstantInSwitch4() { doTest(); } @NeedsIndex.ForStandardLibrary public void testQualifierEnumConstantInSwitchWithObject() { doTest(); } + @NeedsIndex.ForStandardLibrary + public void testQualifierEnumConstantInSwitchWithObjectInJava20() { + IdeaTestUtil.withLevel(myFixture.getModule(), LanguageLevel.JDK_20, () -> doTest()); + } public void testQualifierEnumConstantInSwitchInJava20() { - IdeaTestUtil.withLevel(myFixture.getModule(), LanguageLevel.JDK_19, () -> doTest()); + IdeaTestUtil.withLevel(myFixture.getModule(), LanguageLevel.JDK_20, () -> doTest()); } public void testClassPatternInSwitch1() { doTest(); } public void testClassPatternInSwitch2() { doTest(); }