From 72ec55769b44021471841ce8db342319567d65c6 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Tue, 26 Dec 2017 18:27:13 +0300 Subject: [PATCH] Improve wording for "change package" fix for source root case --- .../PackageDirectoryMismatchInspection.kt | 11 +++++++---- .../changeToDefaultPackage.test | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/changePackage/PackageDirectoryMismatchInspection.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/changePackage/PackageDirectoryMismatchInspection.kt index 9a722b09c5d..9768453d193 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/changePackage/PackageDirectoryMismatchInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/changePackage/PackageDirectoryMismatchInspection.kt @@ -53,8 +53,11 @@ class PackageDirectoryMismatchInspection : AbstractKotlinInspection() { val dirName = if (qualifiedName.isEmpty()) "source root" else "'${qualifiedName.replace('.', '/')}'" fixes += MoveFileToPackageFix(dirName) val fqNameByDirectory = file.getFqNameByDirectory() - if (fqNameByDirectory.hasIdentifiersOnly()) { - fixes += ChangePackageFix(fqNameByDirectory) + when { + fqNameByDirectory.isRoot -> + fixes += ChangePackageFix("source root") + fqNameByDirectory.hasIdentifiersOnly() -> + fixes += ChangePackageFix("'${fqNameByDirectory.asString()}'") } holder.registerProblem( @@ -105,10 +108,10 @@ class PackageDirectoryMismatchInspection : AbstractKotlinInspection() { } } - private class ChangePackageFix(val fqNameByDirectory: FqName) : LocalQuickFix { + private class ChangePackageFix(val packageName: String) : LocalQuickFix { override fun getFamilyName() = "Change file's package to match directory" - override fun getName() = "Change file's package to '${fqNameByDirectory.asString()}'" + override fun getName() = "Change file's package to $packageName" override fun applyFix(project: Project, descriptor: ProblemDescriptor) { val directive = descriptor.psiElement as? KtPackageDirective ?: return diff --git a/idea/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToDefaultPackage/changeToDefaultPackage.test b/idea/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToDefaultPackage/changeToDefaultPackage.test index 4abd758fc9e..8212ba9ac29 100644 --- a/idea/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToDefaultPackage/changeToDefaultPackage.test +++ b/idea/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToDefaultPackage/changeToDefaultPackage.test @@ -1,5 +1,5 @@ { "mainFile": "test.kt", "inspectionClass": "org.jetbrains.kotlin.idea.refactoring.move.changePackage.PackageDirectoryMismatchInspection", - "fix": "Change file's package to ''" + "fix": "Change file's package to source root" } \ No newline at end of file