diff --git a/idea/resources/META-INF/plugin-common.xml b/idea/resources/META-INF/plugin-common.xml
index d996c1dbb6e..e5fa8dbeda9 100644
--- a/idea/resources/META-INF/plugin-common.xml
+++ b/idea/resources/META-INF/plugin-common.xml
@@ -1704,6 +1704,16 @@
Kotlin
+
+ org.jetbrains.kotlin.idea.intentions.ConvertLambdaToMultiLineIntention
+ Kotlin
+
+
+
+ org.jetbrains.kotlin.idea.intentions.ConvertLambdaToSingleLineIntention
+ Kotlin
+
+
+ println(item)
+}
\ No newline at end of file
diff --git a/idea/resources/intentionDescriptions/ConvertLambdaToMultiLineIntention/before.kt.template b/idea/resources/intentionDescriptions/ConvertLambdaToMultiLineIntention/before.kt.template
new file mode 100644
index 00000000000..21a38915df1
--- /dev/null
+++ b/idea/resources/intentionDescriptions/ConvertLambdaToMultiLineIntention/before.kt.template
@@ -0,0 +1 @@
+list.forEach { item -> println(item) }
\ No newline at end of file
diff --git a/idea/resources/intentionDescriptions/ConvertLambdaToMultiLineIntention/description.html b/idea/resources/intentionDescriptions/ConvertLambdaToMultiLineIntention/description.html
new file mode 100644
index 00000000000..ece09f7c1d1
--- /dev/null
+++ b/idea/resources/intentionDescriptions/ConvertLambdaToMultiLineIntention/description.html
@@ -0,0 +1,5 @@
+
+
+This intention converts a single-line lambda to a multi-line one.
+
+
\ No newline at end of file
diff --git a/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/after.kt.template b/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/after.kt.template
new file mode 100644
index 00000000000..21a38915df1
--- /dev/null
+++ b/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/after.kt.template
@@ -0,0 +1 @@
+list.forEach { item -> println(item) }
\ No newline at end of file
diff --git a/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/before.kt.template b/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/before.kt.template
new file mode 100644
index 00000000000..84932276ce4
--- /dev/null
+++ b/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/before.kt.template
@@ -0,0 +1,3 @@
+list.forEach { item ->
+ println(item)
+}
\ No newline at end of file
diff --git a/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/description.html b/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/description.html
new file mode 100644
index 00000000000..988fc78b1da
--- /dev/null
+++ b/idea/resources/intentionDescriptions/ConvertLambdaToSingleLineIntention/description.html
@@ -0,0 +1,5 @@
+
+
+This intention converts a multi-line lambda to a single-line one.
+
+
\ No newline at end of file
diff --git a/idea/src/org/jetbrains/kotlin/idea/intentions/ConvertLambdaLineIntention.kt b/idea/src/org/jetbrains/kotlin/idea/intentions/ConvertLambdaLineIntention.kt
new file mode 100644
index 00000000000..ecb1a024a98
--- /dev/null
+++ b/idea/src/org/jetbrains/kotlin/idea/intentions/ConvertLambdaLineIntention.kt
@@ -0,0 +1,65 @@
+/*
+ * Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
+ * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
+ */
+
+package org.jetbrains.kotlin.idea.intentions
+
+import com.intellij.openapi.editor.Editor
+import com.intellij.psi.PsiComment
+import org.jetbrains.kotlin.idea.inspections.RedundantSemicolonInspection
+import org.jetbrains.kotlin.idea.refactoring.getLineNumber
+import org.jetbrains.kotlin.lexer.KtTokens
+import org.jetbrains.kotlin.psi.KtLambdaExpression
+import org.jetbrains.kotlin.psi.KtPsiFactory
+import org.jetbrains.kotlin.psi.psiUtil.allChildren
+import org.jetbrains.kotlin.psi.psiUtil.getNextSiblingIgnoringWhitespace
+import org.jetbrains.kotlin.psi.psiUtil.getPrevSiblingIgnoringWhitespace
+
+sealed class ConvertLambdaLineIntention(private val toMultiLine: Boolean) : SelfTargetingIntention(
+ KtLambdaExpression::class.java, "Convert to ${if (toMultiLine) "multi" else "single"}-line lambda"
+) {
+ override fun isApplicableTo(element: KtLambdaExpression, caretOffset: Int): Boolean {
+ val functionLiteral = element.functionLiteral
+ val body = functionLiteral.bodyBlockExpression ?: return false
+ val startLine = functionLiteral.getLineNumber(start = true)
+ val endLine = functionLiteral.getLineNumber(start = false)
+ return if (toMultiLine) {
+ startLine == endLine
+ } else {
+ if (startLine == endLine) return false
+ val allChildren = body.allChildren
+ if (allChildren.any { it is PsiComment && it.node.elementType == KtTokens.EOL_COMMENT }) return false
+ val first = allChildren.first?.getNextSiblingIgnoringWhitespace(withItself = true) ?: return true
+ val last = allChildren.last?.getPrevSiblingIgnoringWhitespace(withItself = true)
+ first.getLineNumber(start = true) == last?.getLineNumber(start = false)
+ }
+ }
+
+ override fun applyTo(element: KtLambdaExpression, editor: Editor?) {
+ val functionLiteral = element.functionLiteral
+ val body = functionLiteral.bodyBlockExpression ?: return
+ val psiFactory = KtPsiFactory(element)
+ if (toMultiLine) {
+ body.allChildren.forEach {
+ if (it.node.elementType == KtTokens.SEMICOLON) {
+ body.addAfter(psiFactory.createNewLine(), it)
+ if (RedundantSemicolonInspection.isRedundantSemicolon(it)) it.delete()
+ }
+ }
+ }
+ val bodyText = body.text
+ val startLineBreak = if (toMultiLine) "\n" else ""
+ val endLineBreak = if (toMultiLine && bodyText != "") "\n" else ""
+ element.replace(
+ psiFactory.createLambdaExpression(
+ functionLiteral.valueParameters.joinToString { it.text },
+ "$startLineBreak$bodyText$endLineBreak"
+ )
+ )
+ }
+}
+
+class ConvertLambdaToMultiLineIntention : ConvertLambdaLineIntention(toMultiLine = true)
+
+class ConvertLambdaToSingleLineIntention : ConvertLambdaLineIntention(toMultiLine = false)
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/.intention b/idea/testData/intentions/convertLambdaToMultiLine/.intention
new file mode 100644
index 00000000000..098ca97d8fd
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/.intention
@@ -0,0 +1 @@
+org.jetbrains.kotlin.idea.intentions.ConvertLambdaToMultiLineIntention
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/multiLine.kt b/idea/testData/intentions/convertLambdaToMultiLine/multiLine.kt
new file mode 100644
index 00000000000..0b58e57c330
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/multiLine.kt
@@ -0,0 +1,7 @@
+// IS_APPLICABLE: false
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {
+ println(it)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple.kt b/idea/testData/intentions/convertLambdaToMultiLine/simple.kt
new file mode 100644
index 00000000000..1e8ee608855
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple.kt
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {}
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple.kt.after b/idea/testData/intentions/convertLambdaToMultiLine/simple.kt.after
new file mode 100644
index 00000000000..17b60b038ce
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple.kt.after
@@ -0,0 +1,5 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple2.kt b/idea/testData/intentions/convertLambdaToMultiLine/simple2.kt
new file mode 100644
index 00000000000..fe1c44dc898
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple2.kt
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { println(it) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple2.kt.after b/idea/testData/intentions/convertLambdaToMultiLine/simple2.kt.after
new file mode 100644
index 00000000000..aef1fc7f533
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple2.kt.after
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {
+ println(it)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple3.kt b/idea/testData/intentions/convertLambdaToMultiLine/simple3.kt
new file mode 100644
index 00000000000..20289104557
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple3.kt
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item -> println(item) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple3.kt.after b/idea/testData/intentions/convertLambdaToMultiLine/simple3.kt.after
new file mode 100644
index 00000000000..7e7bbd4c8e4
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple3.kt.after
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+ println(item)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple4.kt b/idea/testData/intentions/convertLambdaToMultiLine/simple4.kt
new file mode 100644
index 00000000000..a50004c1eaa
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple4.kt
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item -> println(item); println(item); println(item) /* comment */ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple4.kt.after b/idea/testData/intentions/convertLambdaToMultiLine/simple4.kt.after
new file mode 100644
index 00000000000..c2dfa59d317
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple4.kt.after
@@ -0,0 +1,8 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+ println(item)
+ println(item)
+ println(item) /* comment */
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple5.kt b/idea/testData/intentions/convertLambdaToMultiLine/simple5.kt
new file mode 100644
index 00000000000..fb054b409fe
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple5.kt
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEachIndexed { index, s -> println(index) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple5.kt.after b/idea/testData/intentions/convertLambdaToMultiLine/simple5.kt.after
new file mode 100644
index 00000000000..deb00db979e
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple5.kt.after
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEachIndexed { index, s ->
+ println(index)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple6.kt b/idea/testData/intentions/convertLambdaToMultiLine/simple6.kt
new file mode 100644
index 00000000000..88b3dad41cd
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple6.kt
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List>) {
+ list.forEach { (s, _) -> println(s) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToMultiLine/simple6.kt.after b/idea/testData/intentions/convertLambdaToMultiLine/simple6.kt.after
new file mode 100644
index 00000000000..649d6641d70
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToMultiLine/simple6.kt.after
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List>) {
+ list.forEach { (s, _) ->
+ println(s)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/.intention b/idea/testData/intentions/convertLambdaToSingleLine/.intention
new file mode 100644
index 00000000000..618a15c48b0
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/.intention
@@ -0,0 +1 @@
+org.jetbrains.kotlin.idea.intentions.ConvertLambdaToSingleLineIntention
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/hasEolComment.kt b/idea/testData/intentions/convertLambdaToSingleLine/hasEolComment.kt
new file mode 100644
index 00000000000..12380ec22d9
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/hasEolComment.kt
@@ -0,0 +1,7 @@
+// IS_APPLICABLE: false
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+ println(item) // comment
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody.kt b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody.kt
new file mode 100644
index 00000000000..27d5b39dcf3
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody.kt
@@ -0,0 +1,8 @@
+// IS_APPLICABLE: false
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+ println(item)
+ println(item)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt
new file mode 100644
index 00000000000..8f93fa4f526
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt
@@ -0,0 +1,10 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+
+
+ println(item) /* comment */
+
+
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt.after
new file mode 100644
index 00000000000..dd62b47f93b
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item -> println(item) /* comment */ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt
new file mode 100644
index 00000000000..36dfa5f6ea7
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt
@@ -0,0 +1,7 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {
+ item ->
+ println(item)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt.after
new file mode 100644
index 00000000000..8a9f870bf43
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item -> println(item) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple.kt b/idea/testData/intentions/convertLambdaToSingleLine/simple.kt
new file mode 100644
index 00000000000..6f84324f5be
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple.kt
@@ -0,0 +1,5 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/simple.kt.after
new file mode 100644
index 00000000000..495f6af8b93
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple2.kt b/idea/testData/intentions/convertLambdaToSingleLine/simple2.kt
new file mode 100644
index 00000000000..6d4e3fc0d18
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple2.kt
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach {
+ println(it)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple2.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/simple2.kt.after
new file mode 100644
index 00000000000..1da2a8aa178
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple2.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { println(it) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple3.kt b/idea/testData/intentions/convertLambdaToSingleLine/simple3.kt
new file mode 100644
index 00000000000..05aefd6634c
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple3.kt
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+ println(item)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple3.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/simple3.kt.after
new file mode 100644
index 00000000000..8a9f870bf43
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple3.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item -> println(item) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple4.kt b/idea/testData/intentions/convertLambdaToSingleLine/simple4.kt
new file mode 100644
index 00000000000..d479450f835
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple4.kt
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item ->
+ println(item); println(item); println(item) /* comment */
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple4.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/simple4.kt.after
new file mode 100644
index 00000000000..afcadde8ba7
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple4.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { item -> println(item); println(item); println(item) /* comment */ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple5.kt b/idea/testData/intentions/convertLambdaToSingleLine/simple5.kt
new file mode 100644
index 00000000000..b175f907edd
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple5.kt
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEachIndexed { index, s ->
+ println(index)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple5.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/simple5.kt.after
new file mode 100644
index 00000000000..5ae0106ab23
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple5.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEachIndexed { index, s -> println(index) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple6.kt b/idea/testData/intentions/convertLambdaToSingleLine/simple6.kt
new file mode 100644
index 00000000000..7323b3f71c2
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple6.kt
@@ -0,0 +1,6 @@
+// WITH_RUNTIME
+fun test(list: List>) {
+ list.forEach { (s, _) ->
+ println(s)
+ }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/simple6.kt.after b/idea/testData/intentions/convertLambdaToSingleLine/simple6.kt.after
new file mode 100644
index 00000000000..a5dd21bb79a
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/simple6.kt.after
@@ -0,0 +1,4 @@
+// WITH_RUNTIME
+fun test(list: List>) {
+ list.forEach { (s, _) -> println(s) }
+}
\ No newline at end of file
diff --git a/idea/testData/intentions/convertLambdaToSingleLine/singleLine.kt b/idea/testData/intentions/convertLambdaToSingleLine/singleLine.kt
new file mode 100644
index 00000000000..fdf284ae877
--- /dev/null
+++ b/idea/testData/intentions/convertLambdaToSingleLine/singleLine.kt
@@ -0,0 +1,5 @@
+// IS_APPLICABLE: false
+// WITH_RUNTIME
+fun test(list: List) {
+ list.forEach { println(it) }
+}
\ 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 fd695cf0434..61942395dc0 100644
--- a/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java
+++ b/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java
@@ -4692,6 +4692,54 @@ public class IntentionTestGenerated extends AbstractIntentionTest {
}
}
+ @TestMetadata("idea/testData/intentions/convertLambdaToMultiLine")
+ @TestDataPath("$PROJECT_ROOT")
+ @RunWith(JUnit3RunnerWithInners.class)
+ public static class ConvertLambdaToMultiLine extends AbstractIntentionTest {
+ private void runTest(String testDataFilePath) throws Exception {
+ KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
+ }
+
+ public void testAllFilesPresentInConvertLambdaToMultiLine() throws Exception {
+ KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("idea/testData/intentions/convertLambdaToMultiLine"), Pattern.compile("^([\\w\\-_]+)\\.(kt|kts)$"), null, true);
+ }
+
+ @TestMetadata("multiLine.kt")
+ public void testMultiLine() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/multiLine.kt");
+ }
+
+ @TestMetadata("simple.kt")
+ public void testSimple() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/simple.kt");
+ }
+
+ @TestMetadata("simple2.kt")
+ public void testSimple2() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/simple2.kt");
+ }
+
+ @TestMetadata("simple3.kt")
+ public void testSimple3() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/simple3.kt");
+ }
+
+ @TestMetadata("simple4.kt")
+ public void testSimple4() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/simple4.kt");
+ }
+
+ @TestMetadata("simple5.kt")
+ public void testSimple5() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/simple5.kt");
+ }
+
+ @TestMetadata("simple6.kt")
+ public void testSimple6() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToMultiLine/simple6.kt");
+ }
+ }
+
@TestMetadata("idea/testData/intentions/convertLambdaToReference")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
@@ -5050,6 +5098,74 @@ public class IntentionTestGenerated extends AbstractIntentionTest {
}
}
+ @TestMetadata("idea/testData/intentions/convertLambdaToSingleLine")
+ @TestDataPath("$PROJECT_ROOT")
+ @RunWith(JUnit3RunnerWithInners.class)
+ public static class ConvertLambdaToSingleLine extends AbstractIntentionTest {
+ private void runTest(String testDataFilePath) throws Exception {
+ KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
+ }
+
+ public void testAllFilesPresentInConvertLambdaToSingleLine() throws Exception {
+ KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("idea/testData/intentions/convertLambdaToSingleLine"), Pattern.compile("^([\\w\\-_]+)\\.(kt|kts)$"), null, true);
+ }
+
+ @TestMetadata("hasEolComment.kt")
+ public void testHasEolComment() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/hasEolComment.kt");
+ }
+
+ @TestMetadata("multiLineBody.kt")
+ public void testMultiLineBody() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/multiLineBody.kt");
+ }
+
+ @TestMetadata("multiLineBody2.kt")
+ public void testMultiLineBody2() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/multiLineBody2.kt");
+ }
+
+ @TestMetadata("multiLineBody3.kt")
+ public void testMultiLineBody3() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/multiLineBody3.kt");
+ }
+
+ @TestMetadata("simple.kt")
+ public void testSimple() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/simple.kt");
+ }
+
+ @TestMetadata("simple2.kt")
+ public void testSimple2() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/simple2.kt");
+ }
+
+ @TestMetadata("simple3.kt")
+ public void testSimple3() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/simple3.kt");
+ }
+
+ @TestMetadata("simple4.kt")
+ public void testSimple4() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/simple4.kt");
+ }
+
+ @TestMetadata("simple5.kt")
+ public void testSimple5() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/simple5.kt");
+ }
+
+ @TestMetadata("simple6.kt")
+ public void testSimple6() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/simple6.kt");
+ }
+
+ @TestMetadata("singleLine.kt")
+ public void testSingleLine() throws Exception {
+ runTest("idea/testData/intentions/convertLambdaToSingleLine/singleLine.kt");
+ }
+ }
+
@TestMetadata("idea/testData/intentions/convertLateinitPropertyToNullable")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)