From 5559a6edd3391b38d2826b92abe9db87c8a6dac8 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Wed, 11 Apr 2018 15:20:51 +0300 Subject: [PATCH] Fix quick fix, refactoring and slice tests - ignore bunch files --- .../tests/org/jetbrains/kotlin/test/KotlinTestUtils.java | 9 +++++++++ .../org/jetbrains/kotlin/test/KotlinTestUtils.java.181 | 9 +++++++++ .../org/jetbrains/kotlin/test/KotlinTestUtils.java.as31 | 9 +++++++++ .../idea/quickfix/AbstractQuickFixMultiFileTest.kt | 7 ++++++- .../idea/refactoring/AbstractMultifileRefactoringTest.kt | 5 +---- .../jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt | 5 ++++- .../kotlin/idea/slicer/AbstractSlicerTest.kt.172 | 5 ++++- 7 files changed, 42 insertions(+), 7 deletions(-) diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java b/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java index 86f3d5f91bc..cecfbcab7cf 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java @@ -1194,4 +1194,13 @@ public class KotlinTestUtils { public static String nameToCompare(@NotNull String name) { return (SystemInfo.isFileSystemCaseSensitive ? name : name.toLowerCase()).replace('\\', '/'); } + + public static boolean isMultiExtensionName(@NotNull String name) { + int firstDotIndex = name.indexOf('.'); + if (firstDotIndex == -1) { + return false; + } + // Several extension if name contains another dot + return name.indexOf('.', firstDotIndex + 1) != -1; + } } diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.181 b/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.181 index 0150d0ec648..f55d7915acb 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.181 +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.181 @@ -1194,4 +1194,13 @@ public class KotlinTestUtils { public static String nameToCompare(@NotNull String name) { return (SystemInfo.isFileSystemCaseSensitive ? name : name.toLowerCase()).replace('\\', '/'); } + + public static boolean isMultiExtensionName(@NotNull String name) { + int firstDotIndex = name.indexOf('.'); + if (firstDotIndex == -1) { + return false; + } + // Several extension if name contains another dot + return name.indexOf('.', firstDotIndex + 1) != -1; + } } diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.as31 b/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.as31 index 3b925d7d394..58120fcabd4 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.as31 +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/test/KotlinTestUtils.java.as31 @@ -1194,4 +1194,13 @@ public class KotlinTestUtils { public static String nameToCompare(@NotNull String name) { return (SystemInfo.isFileSystemCaseSensitive ? name : name.toLowerCase()).replace('\\', '/'); } + + public static boolean isMultiExtensionName(@NotNull String name) { + int firstDotIndex = name.indexOf('.'); + if (firstDotIndex == -1) { + return false; + } + // Several extension if name contains another dot + return name.indexOf('.', firstDotIndex + 1) != -1; + } } diff --git a/idea/tests/org/jetbrains/kotlin/idea/quickfix/AbstractQuickFixMultiFileTest.kt b/idea/tests/org/jetbrains/kotlin/idea/quickfix/AbstractQuickFixMultiFileTest.kt index 64794bf1893..127fc394125 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/quickfix/AbstractQuickFixMultiFileTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/quickfix/AbstractQuickFixMultiFileTest.kt @@ -36,6 +36,7 @@ import com.intellij.openapi.vfs.VirtualFile import com.intellij.psi.PsiFile import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl import com.intellij.util.ArrayUtil +import com.intellij.util.PathUtil import com.intellij.util.containers.ContainerUtil import junit.framework.ComparisonFailure import junit.framework.TestCase @@ -200,7 +201,11 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest val mainFileDir = mainFile.parentFile!! val mainFileName = mainFile.name - val extraFiles = mainFileDir.listFiles { _, name -> name.startsWith(extraFileNamePrefix(mainFileName)) && name != mainFileName }!! + val extraFiles = mainFileDir.listFiles { _, name -> + name.startsWith(extraFileNamePrefix(mainFileName)) + && name != mainFileName + && PathUtil.getFileExtension(name).let { it == "kt" || it == "java" || it == "groovy" } + }!! val testFiles = ArrayList() testFiles.add(mainFile.name) diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt b/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt index cb5b3fc0eb2..d61b438ddc2 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/AbstractMultifileRefactoringTest.kt @@ -34,9 +34,6 @@ import com.intellij.testFramework.LightProjectDescriptor import com.intellij.testFramework.PlatformTestUtil import com.intellij.testFramework.UsefulTestCase import org.jetbrains.kotlin.idea.jsonUtils.getNullableString -import org.jetbrains.kotlin.idea.jsonUtils.getString -import org.jetbrains.kotlin.idea.refactoring.move.MoveAction -import org.jetbrains.kotlin.idea.refactoring.move.runMoveRefactoring import org.jetbrains.kotlin.idea.refactoring.rename.loadTestConfiguration import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.idea.test.KotlinLightProjectDescriptor @@ -95,7 +92,7 @@ abstract class AbstractMultifileRefactoringTest : KotlinLightCodeInsightFixtureT PsiDocumentManager.getInstance(project).commitAllDocuments() FileDocumentManager.getInstance().saveAllDocuments() - PlatformTestUtil.assertDirectoriesEqual(afterVFile, beforeVFile) + PlatformTestUtil.assertDirectoriesEqual(afterVFile, beforeVFile, { file -> !KotlinTestUtils.isMultiExtensionName(file.name) }) } } diff --git a/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt b/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt index cd45ad39c84..4e0e427f297 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt @@ -25,6 +25,7 @@ import com.intellij.slicer.SliceAnalysisParams import com.intellij.slicer.SliceNode import com.intellij.slicer.SliceRootNode import com.intellij.usages.TextChunk +import com.intellij.util.PathUtil import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.psiUtil.startOffset @@ -112,7 +113,9 @@ abstract class AbstractSlicerTest : KotlinLightCodeInsightFixtureTestCase() { val rootDir = mainFile.parentFile val namePrefix = FileUtil.getNameWithoutExtension(mainFile) - val extraFiles = rootDir.listFiles { _, name -> name.startsWith("$namePrefix.") } + val extraFiles = rootDir.listFiles { _, name -> + name.startsWith("$namePrefix.") && PathUtil.getFileExtension(name).let { it == "kt" || it == "java" } + } myFixture.testDataPath = "${KotlinTestUtils.getHomeDirectory()}/${rootDir.path}" diff --git a/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt.172 b/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt.172 index 6194fbc2b55..123291b81a1 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt.172 +++ b/idea/tests/org/jetbrains/kotlin/idea/slicer/AbstractSlicerTest.kt.172 @@ -25,6 +25,7 @@ import com.intellij.util.CommonProcessors import com.intellij.util.Processor import gnu.trove.THashSet import gnu.trove.TObjectHashingStrategy +import com.intellij.util.PathUtil import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.idea.util.application.runReadAction import org.jetbrains.kotlin.psi.KtFile @@ -113,7 +114,9 @@ abstract class AbstractSlicerTest : KotlinLightCodeInsightFixtureTestCase() { val rootDir = mainFile.parentFile val namePrefix = FileUtil.getNameWithoutExtension(mainFile) - val extraFiles = rootDir.listFiles { _, name -> name.startsWith("$namePrefix.") } + val extraFiles = rootDir.listFiles { _, name -> + name.startsWith("$namePrefix.") && PathUtil.getFileExtension(name).let { it == "kt" || it == "java" } + } myFixture.testDataPath = "${KotlinTestUtils.getHomeDirectory()}/${rootDir.path}"