From c305a42128fb3f355a94760f9cd58a14fb4211ad Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Tue, 18 Apr 2017 15:37:41 +0300 Subject: [PATCH] Convert Receiver to Parameter: Place new parameter at the start This affects editor template only since Change Signature already puts converted receiver at the parameter list start by default #KT-15543 Fixed --- .../src/org/jetbrains/kotlin/psi/KtParameterList.java | 5 +++++ .../idea/intentions/ConvertReceiverToParameterIntention.kt | 4 ++-- .../convertReceiverToParameter/autoSuggestedName.kt | 3 +++ .../convertReceiverToParameter/autoSuggestedName.kt.after | 3 +++ .../kotlin/idea/intentions/IntentionTestGenerated.java | 6 ++++++ 5 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 idea/testData/intentions/convertReceiverToParameter/autoSuggestedName.kt create mode 100644 idea/testData/intentions/convertReceiverToParameter/autoSuggestedName.kt.after diff --git a/compiler/frontend/src/org/jetbrains/kotlin/psi/KtParameterList.java b/compiler/frontend/src/org/jetbrains/kotlin/psi/KtParameterList.java index 2195b0ec90a..2c74d1d572f 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/psi/KtParameterList.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/psi/KtParameterList.java @@ -60,6 +60,11 @@ public class KtParameterList extends KtElementImplStubString.foo(s: String): String { + return this + s +} \ No newline at end of file diff --git a/idea/testData/intentions/convertReceiverToParameter/autoSuggestedName.kt.after b/idea/testData/intentions/convertReceiverToParameter/autoSuggestedName.kt.after new file mode 100644 index 00000000000..915454b84c8 --- /dev/null +++ b/idea/testData/intentions/convertReceiverToParameter/autoSuggestedName.kt.after @@ -0,0 +1,3 @@ +fun foo(s1: String, s: String): String { + return s1 + s +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java index 32aec2a7ad4..ffc4c60c7d6 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java @@ -5384,6 +5384,12 @@ public class IntentionTestGenerated extends AbstractIntentionTest { KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/intentions/convertReceiverToParameter"), Pattern.compile("^([\\w\\-_]+)\\.kt$"), TargetBackend.ANY, true); } + @TestMetadata("autoSuggestedName.kt") + public void testAutoSuggestedName() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/intentions/convertReceiverToParameter/autoSuggestedName.kt"); + doTest(fileName); + } + @TestMetadata("functionExpression.kt") public void testFunctionExpression() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/intentions/convertReceiverToParameter/functionExpression.kt");