From 716036a00052ba29ec5f1e931392f5b116f5fd97 Mon Sep 17 00:00:00 2001 From: Toshiaki Kameyama Date: Sat, 21 Dec 2019 13:13:37 +0900 Subject: [PATCH] RemoveModifierFix: fix message for 'companion object' #KT-35604 Fixed --- .../kotlin/idea/quickfix/AddModifierFix.kt | 2 ++ .../quickfix/modifiers/openCompanionObject.kt | 6 ++++++ .../modifiers/openCompanionObject.kt.after | 6 ++++++ .../quickfix/modifiers/openCompanionObject2.kt | 6 ++++++ .../modifiers/openCompanionObject2.kt.after | 6 ++++++ idea/testData/quickfix/modifiers/openObject.kt | 4 ++++ .../quickfix/modifiers/openObject.kt.after | 4 ++++ .../idea/quickfix/QuickFixTestGenerated.java | 15 +++++++++++++++ 8 files changed, 49 insertions(+) create mode 100644 idea/testData/quickfix/modifiers/openCompanionObject.kt create mode 100644 idea/testData/quickfix/modifiers/openCompanionObject.kt.after create mode 100644 idea/testData/quickfix/modifiers/openCompanionObject2.kt create mode 100644 idea/testData/quickfix/modifiers/openCompanionObject2.kt.after create mode 100644 idea/testData/quickfix/modifiers/openObject.kt create mode 100644 idea/testData/quickfix/modifiers/openObject.kt.after diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/AddModifierFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/AddModifierFix.kt index 9abc8056152..d69c257d362 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/AddModifierFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/AddModifierFix.kt @@ -95,6 +95,8 @@ open class AddModifierFix( val nameIdentifier = modifierListOwner.nameIdentifier if (nameIdentifier != null) { name = nameIdentifier.text + } else if ((modifierListOwner as? KtObjectDeclaration)?.isCompanion() == true) { + name = "companion object" } } else if (modifierListOwner is KtPropertyAccessor) { name = modifierListOwner.namePlaceholder.text diff --git a/idea/testData/quickfix/modifiers/openCompanionObject.kt b/idea/testData/quickfix/modifiers/openCompanionObject.kt new file mode 100644 index 00000000000..3b0ba36e548 --- /dev/null +++ b/idea/testData/quickfix/modifiers/openCompanionObject.kt @@ -0,0 +1,6 @@ +// "Make 'companion object' not open" "true" +class A { + open companion object { + fun a(): Int = 1 + } +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/openCompanionObject.kt.after b/idea/testData/quickfix/modifiers/openCompanionObject.kt.after new file mode 100644 index 00000000000..f980591bf3f --- /dev/null +++ b/idea/testData/quickfix/modifiers/openCompanionObject.kt.after @@ -0,0 +1,6 @@ +// "Make 'companion object' not open" "true" +class A { + companion object { + fun a(): Int = 1 + } +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/openCompanionObject2.kt b/idea/testData/quickfix/modifiers/openCompanionObject2.kt new file mode 100644 index 00000000000..c9b0e8585a7 --- /dev/null +++ b/idea/testData/quickfix/modifiers/openCompanionObject2.kt @@ -0,0 +1,6 @@ +// "Make 'Foo' not open" "true" +class A { + open companion object Foo { + fun a(): Int = 1 + } +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/openCompanionObject2.kt.after b/idea/testData/quickfix/modifiers/openCompanionObject2.kt.after new file mode 100644 index 00000000000..7bd1558ecf7 --- /dev/null +++ b/idea/testData/quickfix/modifiers/openCompanionObject2.kt.after @@ -0,0 +1,6 @@ +// "Make 'Foo' not open" "true" +class A { + companion object Foo { + fun a(): Int = 1 + } +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/openObject.kt b/idea/testData/quickfix/modifiers/openObject.kt new file mode 100644 index 00000000000..0f358007a59 --- /dev/null +++ b/idea/testData/quickfix/modifiers/openObject.kt @@ -0,0 +1,4 @@ +// "Make 'Foo' not open" "true" +open object Foo { + fun a(): Int = 1 +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/openObject.kt.after b/idea/testData/quickfix/modifiers/openObject.kt.after new file mode 100644 index 00000000000..c8601363f0a --- /dev/null +++ b/idea/testData/quickfix/modifiers/openObject.kt.after @@ -0,0 +1,4 @@ +// "Make 'Foo' not open" "true" +object Foo { + fun a(): Int = 1 +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java index fa2b1717e71..0860b3116a5 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java @@ -8914,6 +8914,16 @@ public class QuickFixTestGenerated extends AbstractQuickFixTest { runTest("idea/testData/quickfix/modifiers/notAnAnnotationClass.kt"); } + @TestMetadata("openCompanionObject.kt") + public void testOpenCompanionObject() throws Exception { + runTest("idea/testData/quickfix/modifiers/openCompanionObject.kt"); + } + + @TestMetadata("openCompanionObject2.kt") + public void testOpenCompanionObject2() throws Exception { + runTest("idea/testData/quickfix/modifiers/openCompanionObject2.kt"); + } + @TestMetadata("openMemberInFinalClass1.kt") public void testOpenMemberInFinalClass1() throws Exception { runTest("idea/testData/quickfix/modifiers/openMemberInFinalClass1.kt"); @@ -8939,6 +8949,11 @@ public class QuickFixTestGenerated extends AbstractQuickFixTest { runTest("idea/testData/quickfix/modifiers/openModifierInEnum.kt"); } + @TestMetadata("openObject.kt") + public void testOpenObject() throws Exception { + runTest("idea/testData/quickfix/modifiers/openObject.kt"); + } + @TestMetadata("openVarWithPrivateSetter.kt") public void testOpenVarWithPrivateSetter() throws Exception { runTest("idea/testData/quickfix/modifiers/openVarWithPrivateSetter.kt");