diff options
author | Yan Zhulanow <yan.zhulanow@jetbrains.com> | 2021-01-09 04:35:23 +0900 |
---|---|---|
committer | kotlin-ide-monorepo-bot <kotlin-ide-monorepo-bot-no-reply@jetbrains.com> | 2021-01-08 19:36:40 +0000 |
commit | f520538c437c5c94e23066be58be8eac6e22ef9d (patch) | |
tree | cce966a34babedb3947059ed9c375a410dbf1627 /idea | |
parent | 5c434ad52c41fc4db0fe98a7715e0cbc0319a396 (diff) | |
download | intellij-kotlin-f520538c437c5c94e23066be58be8eac6e22ef9d.tar.gz |
Fix tests based on AbstractSearcherTest
GitOrigin-RevId: 95edde743907fdc86c9f6c803eef0b9dbd2ba9fe
Diffstat (limited to 'idea')
-rw-r--r-- | idea/test/org/jetbrains/kotlin/search/AbstractSearcherTest.java | 18 | ||||
-rw-r--r-- | idea/test/org/jetbrains/kotlin/search/AnnotatedMembersSearchTest.kt | 18 | ||||
-rw-r--r-- | idea/test/org/jetbrains/kotlin/search/DefinitionsSearchTest.kt | 11 | ||||
-rw-r--r-- | idea/test/org/jetbrains/kotlin/search/JUnitMembersSearcherTest.kt | 95 | ||||
-rw-r--r-- | idea/test/org/jetbrains/kotlin/search/KotlinReferencesSearchTest.kt | 2 | ||||
-rw-r--r-- | idea/testData/search/definitions/NestedClass.kt (renamed from idea/testData/search/definitions/testNestedClass.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/junit/Junit3.kt (renamed from idea/testData/search/junit/testJunit3.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/junit/Junit4.kt (renamed from idea/testData/search/junit/testJunit4.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/junit/Junit4Alias.kt (renamed from idea/testData/search/junit/testJunit4Alias.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/junit/Junit4FancyAlias.kt (renamed from idea/testData/search/junit/testJunit4FancyAlias.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/references/ComponentFun.kt (renamed from idea/testData/search/references/testComponentFun.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/references/InvokeFun.kt (renamed from idea/testData/search/references/testInvokeFun.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/references/Param.kt (renamed from idea/testData/search/references/testParam.kt) | 0 | ||||
-rw-r--r-- | idea/testData/search/references/Plus.kt (renamed from idea/testData/search/references/testPlus.kt) | 0 |
14 files changed, 66 insertions, 78 deletions
diff --git a/idea/test/org/jetbrains/kotlin/search/AbstractSearcherTest.java b/idea/test/org/jetbrains/kotlin/search/AbstractSearcherTest.java index 6a69f3161390..12aa4df0b125 100644 --- a/idea/test/org/jetbrains/kotlin/search/AbstractSearcherTest.java +++ b/idea/test/org/jetbrains/kotlin/search/AbstractSearcherTest.java @@ -45,8 +45,8 @@ public abstract class AbstractSearcherTest extends KotlinLightCodeInsightFixture return GlobalSearchScope.projectScope(getProject()); } - protected static void checkResult(@NotNull String path, Query<?> actual) throws IOException { - String text = FileUtil.loadFile(new File(path), true); + protected static void checkResult(@NotNull File file, Query<?> actual) throws IOException { + String text = FileUtil.loadFile(file, true); List<String> classFqnFilters = InTextDirectivesUtils.findListWithPrefixes(text, "// IGNORE_CLASSES: "); @@ -76,13 +76,13 @@ public abstract class AbstractSearcherTest extends KotlinLightCodeInsightFixture } protected void checkClassWithDirectives(@NotNull String unused) throws IOException { + File testDataFile = testDataFile(); myFixture.configureByFile(fileName()); - List<String> directives = InTextDirectivesUtils.findListWithPrefixes( - FileUtil.loadFile(testDataFile(), true), "// CLASS: "); + List<String> directives = InTextDirectivesUtils.findListWithPrefixes(FileUtil.loadFile(testDataFile, true), "// CLASS: "); assertFalse("Specify CLASS directive in test file", directives.isEmpty()); String superClassName = directives.get(0); PsiClass psiClass = getPsiClass(superClassName); - checkResult(testPath(), ClassInheritorsSearch.search(psiClass, getProjectScope(), false)); + checkResult(testDataFile, ClassInheritorsSearch.search(psiClass, getProjectScope(), false)); } private static String stringRepresentation(Object member) { @@ -101,14 +101,6 @@ public abstract class AbstractSearcherTest extends KotlinLightCodeInsightFixture throw new IllegalStateException("Do not know how to render member of type: " + member.getClass().getName()); } - protected String getPathToFile() { - return getTestDataPath() + File.separator + getName() + ".kt"; - } - - protected String getFileName() { - return getName() + ".kt"; - } - @NotNull @Override protected LightProjectDescriptor getProjectDescriptor() { diff --git a/idea/test/org/jetbrains/kotlin/search/AnnotatedMembersSearchTest.kt b/idea/test/org/jetbrains/kotlin/search/AnnotatedMembersSearchTest.kt index 64f717e1bb45..65a941b5aece 100644 --- a/idea/test/org/jetbrains/kotlin/search/AnnotatedMembersSearchTest.kt +++ b/idea/test/org/jetbrains/kotlin/search/AnnotatedMembersSearchTest.kt @@ -27,8 +27,10 @@ abstract class AbstractAnnotatedMembersSearchTest : AbstractSearcherTest() { } fun doTest(unused: String) { + val testDataFile = testDataFile() + myFixture.configureByFile(fileName()) - val fileText = FileUtil.loadFile(testDataFile(), true) + val fileText = FileUtil.loadFile(testDataFile, true) val directives = InTextDirectivesUtils.findListWithPrefixes(fileText, "// ANNOTATION: ") TestCase.assertFalse("Specify ANNOTATION directive in test file", directives.isEmpty()) @@ -39,19 +41,19 @@ abstract class AbstractAnnotatedMembersSearchTest : AbstractSearcherTest() { PsiBasedClassResolver.trueHits.set(0) PsiBasedClassResolver.falseHits.set(0) - checkResult( - testPath(), - AnnotatedElementsSearch.searchElements( - psiClass, - projectScope, - PsiModifierListOwner::class.java - ) + val actualResult = AnnotatedElementsSearch.searchElements( + psiClass, + projectScope, + PsiModifierListOwner::class.java ) + checkResult(testDataFile, actualResult) + val optimizedTrue = InTextDirectivesUtils.getPrefixedInt(fileText, "// OPTIMIZED_TRUE:") if (optimizedTrue != null) { TestCase.assertEquals(optimizedTrue.toInt(), PsiBasedClassResolver.trueHits.get()) } + val optimizedFalse = InTextDirectivesUtils.getPrefixedInt(fileText, "// OPTIMIZED_FALSE:") if (optimizedFalse != null) { TestCase.assertEquals(optimizedFalse.toInt(), PsiBasedClassResolver.falseHits.get()) diff --git a/idea/test/org/jetbrains/kotlin/search/DefinitionsSearchTest.kt b/idea/test/org/jetbrains/kotlin/search/DefinitionsSearchTest.kt index 8a5e56249abe..9e203fdbc2ed 100644 --- a/idea/test/org/jetbrains/kotlin/search/DefinitionsSearchTest.kt +++ b/idea/test/org/jetbrains/kotlin/search/DefinitionsSearchTest.kt @@ -13,7 +13,6 @@ import org.jetbrains.kotlin.test.TestMetadata import org.jetbrains.kotlin.test.TestRoot import org.junit.internal.runners.JUnit38ClassRunner import org.junit.runner.RunWith -import java.io.File @TestRoot("idea") @TestMetadata("testData/search/definitions") @@ -24,14 +23,16 @@ class DefinitionsSearchTest : AbstractSearcherTest() { } private fun doTest() { - myFixture.configureByFile(fileName) - val directives = InTextDirectivesUtils.findListWithPrefixes(FileUtil.loadFile(File(pathToFile), true), "// CLASS: ") + val testDataFile = testDataFile() + + myFixture.configureByFile(testDataFile) + val directives = InTextDirectivesUtils.findListWithPrefixes(FileUtil.loadFile(testDataFile, true), "// CLASS: ") assertFalse("Specify CLASS directive in test file", directives.isEmpty()) val superClassName = directives[0] val psiClass = getPsiClass(superClassName) - checkResult(getPathToFile(), DefinitionsScopedSearch.search(psiClass)) + checkResult(testDataFile, DefinitionsScopedSearch.search(psiClass)) val origin = (psiClass as? KtLightClass)?.kotlinOrigin!! - checkResult(getPathToFile(), DefinitionsScopedSearch.search(origin)) + checkResult(testDataFile, DefinitionsScopedSearch.search(origin)) } }
\ No newline at end of file diff --git a/idea/test/org/jetbrains/kotlin/search/JUnitMembersSearcherTest.kt b/idea/test/org/jetbrains/kotlin/search/JUnitMembersSearcherTest.kt index 37427fd5e8db..eb87e5b36859 100644 --- a/idea/test/org/jetbrains/kotlin/search/JUnitMembersSearcherTest.kt +++ b/idea/test/org/jetbrains/kotlin/search/JUnitMembersSearcherTest.kt @@ -2,65 +2,58 @@ * 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.search; - -import com.intellij.openapi.application.PathManager; -import com.intellij.openapi.util.io.FileUtil; -import com.intellij.psi.PsiClass; -import com.intellij.psi.search.searches.AnnotatedMembersSearch; -import com.intellij.testFramework.LightProjectDescriptor; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.kotlin.idea.test.KotlinJdkAndLibraryProjectDescriptor; -import org.jetbrains.kotlin.test.InTextDirectivesUtils; -import org.jetbrains.kotlin.test.TestMetadata; -import org.junit.internal.runners.JUnit38ClassRunner; -import org.junit.runner.RunWith; - -import java.io.File; -import java.io.IOException; -import java.util.List; - -@TestMetadata("idea/testData/search/junit/") -@RunWith(JUnit38ClassRunner.class) -public class JUnitMembersSearcherTest extends AbstractSearcherTest { - private static final LightProjectDescriptor junitProjectDescriptor = - new KotlinJdkAndLibraryProjectDescriptor(new File(PathManager.getHomePath().replace(File.separatorChar, '/') + "/lib/junit-4.12.jar")); - - @TestMetadata("testJunit3.kt") - public void testJunit3() throws IOException { - doJUnit3test(); - } - - public void testJunit4() throws IOException { - doJUnit4test(); +package org.jetbrains.kotlin.search + +import com.intellij.openapi.util.io.FileUtil +import org.jetbrains.kotlin.utils.PathUtil.getResourcePathForClass +import org.jetbrains.kotlin.test.TestMetadata +import java.io.IOException +import org.jetbrains.kotlin.test.InTextDirectivesUtils +import com.intellij.psi.search.searches.AnnotatedMembersSearch +import org.jetbrains.kotlin.idea.test.KotlinJdkAndLibraryProjectDescriptor +import org.jetbrains.kotlin.test.TestRoot +import org.junit.Assert +import org.junit.internal.runners.JUnit38ClassRunner +import org.junit.runner.RunWith +import java.io.File + +@TestRoot("idea") +@TestMetadata("testData/search/junit") +@RunWith(JUnit38ClassRunner::class) +class JUnitMembersSearcherTest : AbstractSearcherTest() { + override fun getProjectDescriptor() = KotlinJdkAndLibraryProjectDescriptor(getResourcePathForClass(Assert::class.java)) + + override val testDataDirectory: File + get() = super.testDataDirectory + + fun testJunit3() { + doJUnit3test() } - public void testJunit4Alias() throws IOException { - doJUnit4test(); + fun testJunit4() { + doJUnit4test() } - public void testJunit4FancyAlias() throws IOException { - doJUnit4test(); + fun testJunit4Alias() { + doJUnit4test() } - private void doJUnit3test() throws IOException { - checkClassWithDirectives("idea/testData/search/junit/testJunit3.kt"); + fun testJunit4FancyAlias() { + doJUnit4test() } - private void doJUnit4test() throws IOException { - myFixture.configureByFile(getFileName()); - List<String> directives = InTextDirectivesUtils.findListWithPrefixes(FileUtil.loadFile(new File(getPathToFile()), true), - "// ANNOTATION: "); - assertFalse("Specify ANNOTATION directive in test file", directives.isEmpty()); - String annotationClassName = directives.get(0); - PsiClass psiClass = getPsiClass(annotationClassName); - checkResult(getPathToFile(), AnnotatedMembersSearch.search(psiClass, getProjectScope())); + private fun doJUnit3test() { + checkClassWithDirectives("idea/testData/search/junit/testJunit3.kt") } - @NotNull - @Override - protected LightProjectDescriptor getProjectDescriptor() { - return junitProjectDescriptor; + @Throws(IOException::class) + private fun doJUnit4test() { + val testDataFile = testDataFile() + myFixture.configureByFile(testDataFile) + val directives = InTextDirectivesUtils.findListWithPrefixes(FileUtil.loadFile(testDataFile, true), "// ANNOTATION: ") + assertFalse("Specify ANNOTATION directive in test file", directives.isEmpty()) + val annotationClassName = directives[0] + val psiClass = getPsiClass(annotationClassName) + checkResult(testDataFile, AnnotatedMembersSearch.search(psiClass, projectScope)) } -} +}
\ No newline at end of file diff --git a/idea/test/org/jetbrains/kotlin/search/KotlinReferencesSearchTest.kt b/idea/test/org/jetbrains/kotlin/search/KotlinReferencesSearchTest.kt index 2b27a5b62047..f1056a720914 100644 --- a/idea/test/org/jetbrains/kotlin/search/KotlinReferencesSearchTest.kt +++ b/idea/test/org/jetbrains/kotlin/search/KotlinReferencesSearchTest.kt @@ -60,7 +60,7 @@ class KotlinReferencesSearchTest : AbstractSearcherTest() { private val myFixtureProxy: JavaCodeInsightTestFixture get() = myFixture private inline fun <reified T : PsiElement> doTest(): List<PsiReference> { - val psiFile = myFixtureProxy.configureByFile(fileName) + val psiFile = myFixtureProxy.configureByFile(testDataFile()) val func = myFixtureProxy.elementAtCaret.getParentOfType<T>(false)!! val refs = ReferencesSearch.search(func).findAll().sortedBy { it.element.textRange.startOffset } diff --git a/idea/testData/search/definitions/testNestedClass.kt b/idea/testData/search/definitions/NestedClass.kt index 86ad5d75ef3c..86ad5d75ef3c 100644 --- a/idea/testData/search/definitions/testNestedClass.kt +++ b/idea/testData/search/definitions/NestedClass.kt diff --git a/idea/testData/search/junit/testJunit3.kt b/idea/testData/search/junit/Junit3.kt index d054aaa0c84a..d054aaa0c84a 100644 --- a/idea/testData/search/junit/testJunit3.kt +++ b/idea/testData/search/junit/Junit3.kt diff --git a/idea/testData/search/junit/testJunit4.kt b/idea/testData/search/junit/Junit4.kt index 44bb64690f77..44bb64690f77 100644 --- a/idea/testData/search/junit/testJunit4.kt +++ b/idea/testData/search/junit/Junit4.kt diff --git a/idea/testData/search/junit/testJunit4Alias.kt b/idea/testData/search/junit/Junit4Alias.kt index 5f35c236c7d7..5f35c236c7d7 100644 --- a/idea/testData/search/junit/testJunit4Alias.kt +++ b/idea/testData/search/junit/Junit4Alias.kt diff --git a/idea/testData/search/junit/testJunit4FancyAlias.kt b/idea/testData/search/junit/Junit4FancyAlias.kt index 14b6a0098515..14b6a0098515 100644 --- a/idea/testData/search/junit/testJunit4FancyAlias.kt +++ b/idea/testData/search/junit/Junit4FancyAlias.kt diff --git a/idea/testData/search/references/testComponentFun.kt b/idea/testData/search/references/ComponentFun.kt index b38c9df36efc..b38c9df36efc 100644 --- a/idea/testData/search/references/testComponentFun.kt +++ b/idea/testData/search/references/ComponentFun.kt diff --git a/idea/testData/search/references/testInvokeFun.kt b/idea/testData/search/references/InvokeFun.kt index 693a372e2739..693a372e2739 100644 --- a/idea/testData/search/references/testInvokeFun.kt +++ b/idea/testData/search/references/InvokeFun.kt diff --git a/idea/testData/search/references/testParam.kt b/idea/testData/search/references/Param.kt index 214ae93e24fd..214ae93e24fd 100644 --- a/idea/testData/search/references/testParam.kt +++ b/idea/testData/search/references/Param.kt diff --git a/idea/testData/search/references/testPlus.kt b/idea/testData/search/references/Plus.kt index 58b6e874186e..58b6e874186e 100644 --- a/idea/testData/search/references/testPlus.kt +++ b/idea/testData/search/references/Plus.kt |