From 5c011bc954f37df2d57c494d74b9c26f107802c5 Mon Sep 17 00:00:00 2001 From: Toshiaki Kameyama Date: Wed, 9 Sep 2020 10:10:17 +0900 Subject: [PATCH] Don't report when property is multi-line and action is MOVE --- .../MoveVariableDeclarationIntoWhenInspection.kt | 1 + ...nePropertywithSingleLineInitializer2.kt.after | 9 --------- ...zer.kt => multiLineWithOneLineInitializer.kt} | 0 ... => multiLineWithOneLineInitializer.kt.after} | 0 ...ApplicableMultiLineWithOneLineInitializer.kt} | 1 + .../LocalInspectionTestGenerated.java | 16 ++++++++-------- 6 files changed, 10 insertions(+), 17 deletions(-) delete mode 100644 idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt.after rename idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/{multiLinePropertywithSingleLineInitializer.kt => multiLineWithOneLineInitializer.kt} (100%) rename idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/{multiLinePropertywithSingleLineInitializer.kt.after => multiLineWithOneLineInitializer.kt.after} (100%) rename idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/{multiLinePropertywithSingleLineInitializer2.kt => notApplicableMultiLineWithOneLineInitializer.kt} (87%) diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/MoveVariableDeclarationIntoWhenInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/MoveVariableDeclarationIntoWhenInspection.kt index 0c5fecd9faf..d4834bda9fd 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/MoveVariableDeclarationIntoWhenInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/MoveVariableDeclarationIntoWhenInspection.kt @@ -41,6 +41,7 @@ class MoveVariableDeclarationIntoWhenInspection : AbstractKotlinInspection(), Cl val action = property.action(expression) if (action == Action.NOTHING) return + if (action == Action.MOVE && !property.isOneLiner()) return holder.registerProblem( property, diff --git a/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt.after b/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt.after deleted file mode 100644 index cee0e15f453..00000000000 --- a/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt.after +++ /dev/null @@ -1,9 +0,0 @@ -fun test() = 42 - -fun foo() { - when (val a = - test()) { - 1 -> a - else -> 24 - } -} \ No newline at end of file diff --git a/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer.kt b/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLineWithOneLineInitializer.kt similarity index 100% rename from idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer.kt rename to idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLineWithOneLineInitializer.kt diff --git a/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer.kt.after b/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLineWithOneLineInitializer.kt.after similarity index 100% rename from idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer.kt.after rename to idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLineWithOneLineInitializer.kt.after diff --git a/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt b/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/notApplicableMultiLineWithOneLineInitializer.kt similarity index 87% rename from idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt rename to idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/notApplicableMultiLineWithOneLineInitializer.kt index 52b75572ab5..57f5a892e34 100644 --- a/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt +++ b/idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/notApplicableMultiLineWithOneLineInitializer.kt @@ -1,3 +1,4 @@ +// PROBLEM: none fun test() = 42 fun foo() { diff --git a/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java index 7852bf9f11c..3459257a19d 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java @@ -6885,14 +6885,9 @@ public class LocalInspectionTestGenerated extends AbstractLocalInspectionTest { runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/inUnaryAndProperty.kt"); } - @TestMetadata("multiLinePropertywithSingleLineInitializer.kt") - public void testMultiLinePropertywithSingleLineInitializer() throws Exception { - runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer.kt"); - } - - @TestMetadata("multiLinePropertywithSingleLineInitializer2.kt") - public void testMultiLinePropertywithSingleLineInitializer2() throws Exception { - runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLinePropertywithSingleLineInitializer2.kt"); + @TestMetadata("multiLineWithOneLineInitializer.kt") + public void testMultiLineWithOneLineInitializer() throws Exception { + runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/multiLineWithOneLineInitializer.kt"); } @TestMetadata("notApplicableInBinaryExpression.kt") @@ -6900,6 +6895,11 @@ public class LocalInspectionTestGenerated extends AbstractLocalInspectionTest { runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/notApplicableInBinaryExpression.kt"); } + @TestMetadata("notApplicableMultiLineWithOneLineInitializer.kt") + public void testNotApplicableMultiLineWithOneLineInitializer() throws Exception { + runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/notApplicableMultiLineWithOneLineInitializer.kt"); + } + @TestMetadata("notApplicableMultyLine.kt") public void testNotApplicableMultyLine() throws Exception { runTest("idea/testData/inspectionsLocal/moveVariableDeclarationIntoWhen/notApplicableMultyLine.kt");