From 0c9720f20ce853ba0e814385a6d606f6722890e3 Mon Sep 17 00:00:00 2001 From: Toshiaki Kameyama Date: Wed, 5 Feb 2020 07:05:07 +0300 Subject: [PATCH] ReplaceGetOrSetInspection: do not report for 'get' with spread operator #KT-36171 Fixed --- .../ReplaceGetOrSetInspection.kt | 11 +++++------ .../replaceGetOrSet/getWithSpread.kt | 13 +++++++++++++ .../replaceGetOrSet/getWithSpread2.kt | 13 +++++++++++++ .../inspections/LocalInspectionTestGenerated.java | 10 ++++++++++ 4 files changed, 41 insertions(+), 6 deletions(-) create mode 100644 idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread.kt create mode 100644 idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread2.kt diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/conventionNameCalls/ReplaceGetOrSetInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/conventionNameCalls/ReplaceGetOrSetInspection.kt index d683a3f2a13..b16700dc5a2 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/conventionNameCalls/ReplaceGetOrSetInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/conventionNameCalls/ReplaceGetOrSetInspection.kt @@ -45,6 +45,11 @@ class ReplaceGetOrSetInspection : AbstractApplicabilityBasedInspectionget(*args) +} diff --git a/idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread2.kt b/idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread2.kt new file mode 100644 index 00000000000..a9deb030a5c --- /dev/null +++ b/idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread2.kt @@ -0,0 +1,13 @@ +// PROBLEM: none +class B { + operator fun get(i: Int, vararg args: String) { + println(args.size) + } + + private fun println(i: Int) {} +} + +fun main() { + val args = arrayOf("a", "b") + B().get(1, *args) +} diff --git a/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java index 71283c91812..feb2884a5f0 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java @@ -3142,6 +3142,16 @@ public class LocalInspectionTestGenerated extends AbstractLocalInspectionTest { runTest("idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/functionalArgument.kt"); } + @TestMetadata("getWithSpread.kt") + public void testGetWithSpread() throws Exception { + runTest("idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread.kt"); + } + + @TestMetadata("getWithSpread2.kt") + public void testGetWithSpread2() throws Exception { + runTest("idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/getWithSpread2.kt"); + } + @TestMetadata("invalidArgument.kt") public void testInvalidArgument() throws Exception { runTest("idea/testData/inspectionsLocal/conventionNameCalls/replaceGetOrSet/invalidArgument.kt");