diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt index faf7b88e7a52..756aff75727b 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/AbstractExtractionTest.kt @@ -59,6 +59,7 @@ import org.jetbrains.kotlin.parsing.KotlinParserDefinition import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType import org.jetbrains.kotlin.renderer.DescriptorRenderer +import org.jetbrains.kotlin.test.utils.IgnoreTests import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstance import java.io.File import java.util.* @@ -70,15 +71,21 @@ abstract class AbstractExtractionTest : KotlinLightCodeInsightFixtureTestCase() val fixture: JavaCodeInsightTestFixture get() = myFixture protected open fun doIntroduceVariableTest(unused: String) { - doTest { file -> - file as KtFile + IgnoreTests.runTestIfNotDisabledByFileDirective( + dataFilePath(), + IgnoreTests.DIRECTIVES.IGNORE_K1, + directivePosition = IgnoreTests.DirectivePosition.LAST_LINE_IN_FILE + ) { + doTest { file -> + file as KtFile - KotlinIntroduceVariableHandler.invoke( - fixture.project, - fixture.editor, - file, - DataManager.getInstance().getDataContext(fixture.editor.component) - ) + KotlinIntroduceVariableHandler.invoke( + fixture.project, + fixture.editor, + file, + DataManager.getInstance().getDataContext(fixture.editor.component) + ) + } } } @@ -382,7 +389,7 @@ abstract class AbstractExtractionTest : KotlinLightCodeInsightFixtureTestCase() try { checkExtract( - ExtractTestFiles(mainFile.path, fixture.configureByFile(mainFileName), extraFilesToPsi), + ExtractTestFiles(mainFile.path, fixture.configureByFile(mainFileName), extraFilesToPsi, isFirPlugin), checkAdditionalAfterdata, action, ) @@ -403,8 +410,21 @@ class ExtractTestFiles( val conflictFile: File, val extraFilesToPsi: Map = emptyMap() ) { - constructor(path: String, mainFile: PsiFile, extraFilesToPsi: Map = emptyMap()) : - this(mainFile, File("$path.after"), File("$path.conflicts"), extraFilesToPsi) + constructor(path: String, mainFile: PsiFile, extraFilesToPsi: Map = emptyMap(), isFirPlugin: Boolean) : + this(mainFile, getAfterFile(path, isFirPlugin), File("$path.conflicts"), extraFilesToPsi) + + +} + +private fun getAfterFile(path: String, isFirPlugin: Boolean): File { + var file = File("$path.after") + if (isFirPlugin) { + val firSpecific = File("$path.fir.after") + if (firSpecific.exists()) { + file = firSpecific + } + } + return file } fun checkExtract(files: ExtractTestFiles, checkAdditionalAfterdata: Boolean = false, action: (PsiFile) -> Unit) { diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/ExtractionTestGenerated.java b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/ExtractionTestGenerated.java index 305a8e11c067..cd1f30705ec0 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/ExtractionTestGenerated.java +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/refactoring/introduce/ExtractionTestGenerated.java @@ -558,9 +558,14 @@ public abstract class ExtractionTestGenerated extends AbstractExtractionTest { runTest("testData/refactoring/introduceVariable/NameSuggestionCheckVisibility.kt"); } - @TestMetadata("noConflictWithInnerVariable.kt") - public void testNoConflictWithInnerVariable() throws Exception { - runTest("testData/refactoring/introduceVariable/noConflictWithInnerVariable.kt"); + @TestMetadata("noConflictWithInnerVariableK1.kt") + public void testNoConflictWithInnerVariableK1() throws Exception { + runTest("testData/refactoring/introduceVariable/noConflictWithInnerVariableK1.kt"); + } + + @TestMetadata("noConflictWithInnerVariableK2.kt") + public void testNoConflictWithInnerVariableK2() throws Exception { + runTest("testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt"); } @TestMetadata("NoExplicitReceivers.kt") diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt index e3536d47ed21..168342bb98e9 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun a() { if (true) 2 else 1 diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.after index d79345012355..64eeb8586585 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun a() { val b = true if (b) 2 diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.fir.after new file mode 100644 index 000000000000..eb6b88750fca --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/IfCondition.kt.fir.after @@ -0,0 +1,5 @@ +fun a() { + val bool = true + if (bool) 2 + else 1 +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt index 03d3122b6ec4..0868aa8cae4d 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt @@ -1,4 +1,4 @@ -// IGNORE_K2 +// WITH_STDLIB fun a() { for (a in 1..2) {} } \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.after index 9dd5a742f190..9c6d24e04459 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.after @@ -1,4 +1,4 @@ -// IGNORE_K2 +// WITH_STDLIB fun a() { val intRange = 1..2 for (a in intRange) {} diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.fir.after new file mode 100644 index 000000000000..d58db848b07c --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/LoopRange.kt.fir.after @@ -0,0 +1,5 @@ +// WITH_STDLIB +fun a() { + val ints = 1..2 + for (a in ints) {} +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt index 45a4c05c9b58..3493844de5fc 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun a() { while (true) {} } \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.after index 98cf649f702f..63921251bee8 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun a() { val b = true while (b) {} diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.fir.after new file mode 100644 index 000000000000..12619fbc18e2 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/WhileCondition.kt.fir.after @@ -0,0 +1,4 @@ +fun a() { + val bool = true + while (bool) {} +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt index fd61a18896f5..b195a44478d6 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 // WITH_STDLIB fun f() { val v : List = (listOf()) diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.after index 3b214e2e902e..10e4d220b13e 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 // WITH_STDLIB fun f() { val listOf = listOf() diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.fir.after new file mode 100644 index 000000000000..838c29d18c8f --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/explicateTypeArguments/Parenthesized.kt.fir.after @@ -0,0 +1,5 @@ +// WITH_STDLIB +fun f() { + val listOf = listOf() + val v : List = (listOf) +} diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt index 177c2389bd94..5d66bd6bea99 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) { } fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.after index f4323c87a49e..a349cf092e16 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) { } fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.fir.after new file mode 100644 index 000000000000..b4d3af550370 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpression.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) { } + +fun test() { + val i = 1 + 2 + foo(fun() = (i) * 3) +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt index 2a7313cb52e4..44fa912b736d 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) { } fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.after index cfab1b32a010..63de8c4f0900 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) { } fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.fir.after new file mode 100644 index 000000000000..b875b79fa2a9 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideFunExpressionWithBlock.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) { } + +fun test() { + val i = 1 + 2 + foo(fun(): Int { return (i) * 3 }) +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt index 4635e79111c0..06eb39e00604 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) { } fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.after index b3c9cf9887f9..acd2e900cc04 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) { } fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.fir.after new file mode 100644 index 000000000000..88ee0163be91 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideLamba.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) { } + +fun test() { + val i = 1 + 2 + foo { (i) * 3 } +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt index 0fb16eaa0332..198789c86728 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.after index 4fefe15d32b2..b0d64a20da02 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.fir.after new file mode 100644 index 000000000000..bd3026d7c29c --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpression.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) = f() + +fun test() { + val i = 1 + 2 + foo(fun() = foo(fun() = (i) * 3)) +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt index 14eaa323ff55..ce73561abc5e 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.after index 76ec79df03d9..d6b3724717f9 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.fir.after new file mode 100644 index 000000000000..0249fa7a5630 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedFunExpressionInLambda.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) = f() + +fun test() { + val i = 1 + 2 + foo { foo(fun() = (i) * 3) } +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt index a8095abc6e77..94f0469ccf61 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.after index e5b1796157f4..b94d5299db75 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.fir.after new file mode 100644 index 000000000000..246b1efd3441 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLamba.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) = f() + +fun test() { + val i = 1 + 2 + foo { foo { (i) * 3 } } +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt index 05076118a02a..10217265721e 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.after index 30098974998a..ecdf68939f33 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 fun foo(f: () -> Int) = f() fun test() { diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.fir.after new file mode 100644 index 000000000000..809ae641850c --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/extractToScope/insideNestedLambdaInFunExpression.kt.fir.after @@ -0,0 +1,6 @@ +fun foo(f: () -> Int) = f() + +fun test() { + val i = 1 + 2 + foo(fun() = foo { (i) * 3 }) +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt index be841c265b6c..4521dff23fcb 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt @@ -1,4 +1,3 @@ -// IGNORE_K2 // WITH_STDLIB fun test() { (1 to 2).first diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.after index 38b8a2bc9b95..e721b7196df2 100644 --- a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.after +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.after @@ -1,4 +1,3 @@ -// IGNORE_K2 // WITH_STDLIB fun test() { val pair = 1 to 2 diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.fir.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.fir.after new file mode 100644 index 000000000000..7bc026bee7b8 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/multiDeclarations/usedExpr.kt.fir.after @@ -0,0 +1,5 @@ +// WITH_STDLIB +fun test() { + val pair = 1 to 2 + (pair).first +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariable.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK1.kt similarity index 100% rename from plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariable.kt rename to plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK1.kt diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariable.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK1.kt.after similarity index 100% rename from plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariable.kt.after rename to plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK1.kt.after diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt new file mode 100644 index 000000000000..57bf58c58277 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt @@ -0,0 +1,8 @@ +// IGNORE_K1 +fun foo() { + val a = 1 + if (a > 0) { + val bool = 0 + println(bool) + } +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt.after b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt.after new file mode 100644 index 000000000000..dca645206119 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt.after @@ -0,0 +1,9 @@ +// IGNORE_K1 +fun foo() { + val a = 1 + val bool1 = a > 0 + if (bool1) { + val bool = 0 + println(bool) + } +} \ No newline at end of file diff --git a/plugins/kotlin/refactorings/kotlin.refactorings.introduce.k2/test/org/jetbrains/kotlin/idea/k2/refactoring/introduce/introduceVariable/K2IntroduceVariableTestGenerated.java b/plugins/kotlin/refactorings/kotlin.refactorings.introduce.k2/test/org/jetbrains/kotlin/idea/k2/refactoring/introduce/introduceVariable/K2IntroduceVariableTestGenerated.java index 2779bcbfb961..a08f407e5194 100644 --- a/plugins/kotlin/refactorings/kotlin.refactorings.introduce.k2/test/org/jetbrains/kotlin/idea/k2/refactoring/introduce/introduceVariable/K2IntroduceVariableTestGenerated.java +++ b/plugins/kotlin/refactorings/kotlin.refactorings.introduce.k2/test/org/jetbrains/kotlin/idea/k2/refactoring/introduce/introduceVariable/K2IntroduceVariableTestGenerated.java @@ -556,9 +556,14 @@ public abstract class K2IntroduceVariableTestGenerated extends AbstractK2Introdu runTest("../../idea/tests/testData/refactoring/introduceVariable/NameSuggestionCheckVisibility.kt"); } - @TestMetadata("noConflictWithInnerVariable.kt") - public void testNoConflictWithInnerVariable() throws Exception { - runTest("../../idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariable.kt"); + @TestMetadata("noConflictWithInnerVariableK1.kt") + public void testNoConflictWithInnerVariableK1() throws Exception { + runTest("../../idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK1.kt"); + } + + @TestMetadata("noConflictWithInnerVariableK2.kt") + public void testNoConflictWithInnerVariableK2() throws Exception { + runTest("../../idea/tests/testData/refactoring/introduceVariable/noConflictWithInnerVariableK2.kt"); } @TestMetadata("NoExplicitReceivers.kt")