From 83f2a08708b51f155da8138d670c4263f0e836eb Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Tue, 31 Mar 2015 18:11:46 +0300 Subject: [PATCH] Added test with moving file used in Java to other package. --- .../after/JavaUsage.java | 8 ++++++++ .../after/newPackage/stuff.kt | 6 ++++++ .../after/oldPackage/dummy.txt | 0 .../before/JavaUsage.java | 8 ++++++++ .../before/oldPackage/dummy.txt | 0 .../before/oldPackage/stuff.kt | 6 ++++++ .../moveLastFileInPackageWithPackageRename.test | 5 +++++ .../kotlin/idea/refactoring/move/AbstractJetMoveTest.kt | 3 +++ .../idea/refactoring/move/JetMoveTestGenerated.java | 6 ++++++ 9 files changed, 42 insertions(+) create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/JavaUsage.java create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/newPackage/stuff.kt create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/oldPackage/dummy.txt create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/JavaUsage.java create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/dummy.txt create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/stuff.kt create mode 100644 idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/moveLastFileInPackageWithPackageRename.test diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/JavaUsage.java b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/JavaUsage.java new file mode 100644 index 00000000000..aa4fdb9b8a9 --- /dev/null +++ b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/JavaUsage.java @@ -0,0 +1,8 @@ +import newPackage.NewPackagePackage; + +class JavaUsage { + public static void main(String[] args) { + NewPackagePackage.foo(); + NewPackagePackage.getProp(); + } +} \ No newline at end of file diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/newPackage/stuff.kt b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/newPackage/stuff.kt new file mode 100644 index 00000000000..5ed77db3c50 --- /dev/null +++ b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/newPackage/stuff.kt @@ -0,0 +1,6 @@ +package newPackage + +fun foo() { +} + +var prop = ":)" \ No newline at end of file diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/oldPackage/dummy.txt b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/after/oldPackage/dummy.txt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/JavaUsage.java b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/JavaUsage.java new file mode 100644 index 00000000000..29ef70d83e3 --- /dev/null +++ b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/JavaUsage.java @@ -0,0 +1,8 @@ +import oldPackage.OldPackagePackage; + +class JavaUsage { + public static void main(String[] args) { + OldPackagePackage.foo(); + OldPackagePackage.getProp(); + } +} \ No newline at end of file diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/dummy.txt b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/dummy.txt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/stuff.kt b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/stuff.kt new file mode 100644 index 00000000000..88fcf1264ec --- /dev/null +++ b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/before/oldPackage/stuff.kt @@ -0,0 +1,6 @@ +package oldPackage + +fun foo() { +} + +var prop = ":)" \ No newline at end of file diff --git a/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/moveLastFileInPackageWithPackageRename.test b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/moveLastFileInPackageWithPackageRename.test new file mode 100644 index 00000000000..8e02550c350 --- /dev/null +++ b/idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/moveLastFileInPackageWithPackageRename.test @@ -0,0 +1,5 @@ +{ + "mainFile": "oldPackage/stuff.kt", + "type": "MOVE_FILES", + "targetPackage": "newPackage" +} diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/AbstractJetMoveTest.kt b/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/AbstractJetMoveTest.kt index 9460526ffd8..1d454f9102f 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/AbstractJetMoveTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/AbstractJetMoveTest.kt @@ -33,6 +33,7 @@ import com.intellij.codeInsight.TargetElementUtilBase import com.intellij.openapi.fileEditor.FileDocumentManager import com.intellij.openapi.editor.EditorFactory import com.intellij.openapi.editor.Document +import com.intellij.openapi.vfs.VfsUtil import com.intellij.psi.PsiDocumentManager import org.jetbrains.kotlin.test.JetTestUtils import com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesProcessor @@ -46,6 +47,7 @@ import com.intellij.psi.PsiFile import com.intellij.psi.PsiManager import com.intellij.refactoring.move.moveFilesOrDirectories.MoveFilesOrDirectoriesProcessor import com.intellij.refactoring.move.MoveHandler +import com.intellij.util.ActionRunner import org.jetbrains.kotlin.idea.refactoring.move.moveTopLevelDeclarations.MoveKotlinTopLevelDeclarationsProcessor import org.jetbrains.kotlin.psi.JetNamedDeclaration import org.jetbrains.kotlin.idea.refactoring.move.moveTopLevelDeclarations.MoveDestinationKotlinMoveTarget @@ -233,6 +235,7 @@ enum class MoveAction { val targetPackage = config.getNullableString("targetPackage") if (targetPackage != null) { + ActionRunner.runInsideWriteAction { VfsUtil.createDirectoryIfMissing(rootDir, targetPackage.replace('.', '/')) } MoveFilesOrDirectoriesProcessor( project, array(mainFile), diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/JetMoveTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/JetMoveTestGenerated.java index 543541ebee7..eb50df766f8 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/JetMoveTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/move/JetMoveTestGenerated.java @@ -234,6 +234,12 @@ public class JetMoveTestGenerated extends AbstractJetMoveTest { doTest(fileName); } + @TestMetadata("kotlin/moveFile/moveLastFileInPackageWithPackageRename/moveLastFileInPackageWithPackageRename.test") + public void testKotlin_moveFile_moveLastFileInPackageWithPackageRename_MoveLastFileInPackageWithPackageRename() throws Exception { + String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveFile/moveLastFileInPackageWithPackageRename/moveLastFileInPackageWithPackageRename.test"); + doTest(fileName); + } + @TestMetadata("kotlin/movePackage/movePackage/movePackage.test") public void testKotlin_movePackage_movePackage_MovePackage() throws Exception { String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/movePackage/movePackage/movePackage.test");