From c81004ac515a472b1504cc0a85c08f54d809e68d Mon Sep 17 00:00:00 2001 From: Roman Ivanov Date: Mon, 21 Aug 2023 10:50:36 +0200 Subject: [PATCH] [java] extract run line marker tests for java 21 GitOrigin-RevId: 339a4813d4a0592bb0a0b5c6607e3c59da08b893 --- .../navigation/RunLineMarkerJava21Test.java | 112 ++++++++++++++++++ .../navigation/RunLineMarkerTest.java | 100 ---------------- 2 files changed, 112 insertions(+), 100 deletions(-) create mode 100644 java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerJava21Test.java diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerJava21Test.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerJava21Test.java new file mode 100644 index 000000000000..2d85cc80d0e7 --- /dev/null +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerJava21Test.java @@ -0,0 +1,112 @@ +// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.java.codeInsight.navigation; + +import com.intellij.codeInsight.daemon.GutterMark; +import com.intellij.pom.java.LanguageLevel; +import com.intellij.testFramework.IdeaTestUtil; +import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase; + +import java.util.List; + +public class RunLineMarkerJava21Test extends LightJavaCodeInsightFixtureTestCase { + + public void testUnnamedAllowsNonStatic() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + void main() { + } + """); + List marks = myFixture.findGuttersAtCaret(); + assertEquals(1, marks.size()); + }); + } + + public void testClassWithConstructorWithoutParamsAndInstanceMainIsAllowed() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + public class A { + A() {} + public void main() {} + } + """); + List marks = myFixture.findGuttersAtCaret(); + assertEquals(1, marks.size()); + }); + } + + public void testClassWithDefaultConstructorParamsAndInstanceMainIsAllowed() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + public class A { + public void main() {} + } + """); + List marks = myFixture.findGuttersAtCaret(); + assertEquals(1, marks.size()); + }); + } + + public void testClassWithConstructorWithParametersAndInstanceMethodIsNotEntryPoint() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + public class A { + A(String s) {} + public void main() {} + } + """); + List marks = myFixture.findGuttersAtCaret(); + assertEquals(0, marks.size()); + }); + } + + public void testMainInsideInnerClassInUnnamedClassHasNoGutter() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + void foo() { + } + + public class A { + public void main() {} + } + """); + List marks = myFixture.findGuttersAtCaret(); + assertEquals(0, marks.size()); + }); + } + + public void testStaticWithParameterHasHigherPriority() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + static void main() {} + static void main(String[] args) {} + """); + List marks = myFixture.findAllGutters(); + assertEquals(1, marks.size()); + assertEmpty(myFixture.findGuttersAtCaret()); + }); + } + + public void testStaticWithNoParametersHasHigherPriorityThanInstance() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + static void main() {} + void main(String[] args) {} + """); + List marks = myFixture.findAllGutters(); + assertEquals(1, marks.size()); + assertEmpty(myFixture.findGuttersAtCaret()); + }); + } + + public void testInstanceWithParameterHasHigherPriority() { + IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { + myFixture.configureByText("MainTest.java", """ + void main() {} + void main(String[] args) {} + """); + List marks = myFixture.findAllGutters(); + assertEquals(1, marks.size()); + assertEmpty(myFixture.findGuttersAtCaret()); + }); + } +} diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerTest.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerTest.java index 94911859b5d8..235f7a8f5dda 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/navigation/RunLineMarkerTest.java @@ -330,106 +330,6 @@ public class RunLineMarkerTest extends LightJavaCodeInsightFixtureTestCase { ContainerUtil.addIfNotNull(myTempSettings, RunManager.getInstance(getProject()).getSelectedConfiguration()); } - public void testUnnamedAllowsNonStatic() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - void main() { - } - """); - List marks = myFixture.findGuttersAtCaret(); - assertEquals(1, marks.size()); - }); - } - - public void testClassWithConstructorWithoutParamsAndInstanceMainIsAllowed() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - public class A { - A() {} - public void main() {} - } - """); - List marks = myFixture.findGuttersAtCaret(); - assertEquals(1, marks.size()); - }); - } - - public void testClassWithDefaultConstructorParamsAndInstanceMainIsAllowed() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - public class A { - public void main() {} - } - """); - List marks = myFixture.findGuttersAtCaret(); - assertEquals(1, marks.size()); - }); - } - - public void testClassWithConstructorWithParametersAndInstanceMethodIsNotEntryPoint() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - public class A { - A(String s) {} - public void main() {} - } - """); - List marks = myFixture.findGuttersAtCaret(); - assertEquals(0, marks.size()); - }); - } - - public void testMainInsideInnerClassInUnnamedClassHasNoGutter() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - void foo() { - } - - public class A { - public void main() {} - } - """); - List marks = myFixture.findGuttersAtCaret(); - assertEquals(0, marks.size()); - }); - } - - public void testStaticWithParameterHasHigherPriority() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - static void main() {} - static void main(String[] args) {} - """); - List marks = myFixture.findAllGutters(); - assertEquals(1, marks.size()); - assertEmpty(myFixture.findGuttersAtCaret()); - }); - } - - public void testStaticWithNoParametersHasHigherPriorityThanInstance() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - static void main() {} - void main(String[] args) {} - """); - List marks = myFixture.findAllGutters(); - assertEquals(1, marks.size()); - assertEmpty(myFixture.findGuttersAtCaret()); - }); - } - - public void testInstanceWithParameterHasHigherPriority() { - IdeaTestUtil.withLevel(getModule(), LanguageLevel.JDK_21_PREVIEW, () -> { - myFixture.configureByText("MainTest.java", """ - void main() {} - void main(String[] args) {} - """); - List marks = myFixture.findAllGutters(); - assertEquals(1, marks.size()); - assertEmpty(myFixture.findGuttersAtCaret()); - }); - } - public void testActionNameFromPreferredProducer() { myFixture.configureByText("Main.java", """ public class Main {