diff --git a/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt b/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt index 08775e3b6d6..9960292bde5 100644 --- a/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt +++ b/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt @@ -47,6 +47,7 @@ import org.jetbrains.kotlin.idea.codeInsight.postfix.AbstractPostfixTemplateProv import org.jetbrains.kotlin.idea.codeInsight.surroundWith.AbstractSurroundWithTest import org.jetbrains.kotlin.idea.codeInsight.unwrap.AbstractUnwrapRemoveTest import org.jetbrains.kotlin.idea.completion.AbstractHighLevelJvmBasicCompletionTest +import org.jetbrains.kotlin.idea.completion.AbstractHighLevelMultiFileJvmBasicCompletionTest import org.jetbrains.kotlin.idea.completion.test.* import org.jetbrains.kotlin.idea.completion.test.handlers.* import org.jetbrains.kotlin.idea.completion.test.weighers.AbstractBasicCompletionWeigherTest @@ -1178,6 +1179,10 @@ fun main(args: Array) { testClass { model("weighers/basic", pattern = KT_OR_KTS_WITHOUT_DOTS_IN_NAME) } + + testClass { + model("basic/multifile", extension = null, recursive = false) + } } testGroup("idea/idea-fir/tests", "idea/testData/findUsages") { @@ -1393,10 +1398,6 @@ fun main(args: Array) { model("basic/multifile", extension = null, recursive = false) } - testClass("MultiFilePrimitiveJvmBasicCompletionTestGenerated") { - model("basic/multifilePrimitive", extension = null, recursive = false) - } - testClass { model("smartMultiFile", extension = null, recursive = false) } diff --git a/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt.as41 b/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt.as41 index 3fc0ba7f9dc..8ec36bb4715 100644 --- a/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt.as41 +++ b/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt.as41 @@ -1005,10 +1005,6 @@ fun main(args: Array) { model("basic/multifile", extension = null, recursive = false) } - testClass("MultiFilePrimitiveJvmBasicCompletionTestGenerated") { - model("basic/multifilePrimitive", extension = null, recursive = false) - } - testClass { model("smartMultiFile", extension = null, recursive = false) } diff --git a/idea/build.gradle.kts b/idea/build.gradle.kts index 7642bb97bc5..81834b32cfc 100644 --- a/idea/build.gradle.kts +++ b/idea/build.gradle.kts @@ -116,6 +116,7 @@ dependencies { testCompile(project(":kotlin-test:kotlin-test-junit")) testCompile(projectTests(":compiler:tests-common")) testCompile(projectTests(":idea:idea-test-framework")) { isTransitive = false } + testImplementation(projectTests(":idea:idea-frontend-independent")) { isTransitive = false } testCompile(project(":idea:idea-jvm")) { isTransitive = false } testCompile(project(":idea:idea-gradle")) { isTransitive = false } testCompile(project(":idea:idea-maven")) { isTransitive = false } diff --git a/idea/idea-completion/testData/basic/multifile/CallableReferenceNotImported/CallableReferenceNotImported.kt b/idea/idea-completion/testData/basic/multifile/CallableReferenceNotImported/CallableReferenceNotImported.kt index b1507f8026f..9853a70378f 100644 --- a/idea/idea-completion/testData/basic/multifile/CallableReferenceNotImported/CallableReferenceNotImported.kt +++ b/idea/idea-completion/testData/basic/multifile/CallableReferenceNotImported/CallableReferenceNotImported.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON fun String.foo() { val v = ::xxx_ } diff --git a/idea/idea-completion/testData/basic/multifile/CompleteFunctionWithNoSpecifiedType/CompleteFunctionWithNoSpecifiedType.kt b/idea/idea-completion/testData/basic/multifile/CompleteFunctionWithNoSpecifiedType/CompleteFunctionWithNoSpecifiedType.kt index 54dfeb36366..8d7bbba5638 100644 --- a/idea/idea-completion/testData/basic/multifile/CompleteFunctionWithNoSpecifiedType/CompleteFunctionWithNoSpecifiedType.kt +++ b/idea/idea-completion/testData/basic/multifile/CompleteFunctionWithNoSpecifiedType/CompleteFunctionWithNoSpecifiedType.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first import second.testFun diff --git a/idea/idea-completion/testData/basic/multifile/CompleteImportedFunction/CompleteImportedFunction.kt b/idea/idea-completion/testData/basic/multifile/CompleteImportedFunction/CompleteImportedFunction.kt index e8c3d43f572..577b4e9d293 100644 --- a/idea/idea-completion/testData/basic/multifile/CompleteImportedFunction/CompleteImportedFunction.kt +++ b/idea/idea-completion/testData/basic/multifile/CompleteImportedFunction/CompleteImportedFunction.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first import second.testFun diff --git a/idea/idea-completion/testData/basic/multifile/CompletionOnImportedFunction/CompletionOnImportedFunction.kt b/idea/idea-completion/testData/basic/multifile/CompletionOnImportedFunction/CompletionOnImportedFunction.kt index 10e2e956cf6..31b2b6299d7 100644 --- a/idea/idea-completion/testData/basic/multifile/CompletionOnImportedFunction/CompletionOnImportedFunction.kt +++ b/idea/idea-completion/testData/basic/multifile/CompletionOnImportedFunction/CompletionOnImportedFunction.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first import second.testFun diff --git a/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteral/FileRefInStringLiteral.kt b/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteral/FileRefInStringLiteral.kt index 55b0ca76309..2886c5235f7 100644 --- a/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteral/FileRefInStringLiteral.kt +++ b/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteral/FileRefInStringLiteral.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON // NUMBER: 1 // EXIST: foo.txt diff --git a/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteralNoPrefix/FileRefInStringLiteralNoPrefix.kt b/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteralNoPrefix/FileRefInStringLiteralNoPrefix.kt index 4221f011cb4..5384956efdc 100644 --- a/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteralNoPrefix/FileRefInStringLiteralNoPrefix.kt +++ b/idea/idea-completion/testData/basic/multifile/FileRefInStringLiteralNoPrefix/FileRefInStringLiteralNoPrefix.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON // NUMBER: 3 // EXIST: foo.txt // EXIST: bar.txt diff --git a/idea/idea-completion/testData/basic/multifile/InImportedFunctionLiteralParameter/InImportedFunctionLiteralParameter.kt b/idea/idea-completion/testData/basic/multifile/InImportedFunctionLiteralParameter/InImportedFunctionLiteralParameter.kt index 1e89da624a2..1671c8ab099 100644 --- a/idea/idea-completion/testData/basic/multifile/InImportedFunctionLiteralParameter/InImportedFunctionLiteralParameter.kt +++ b/idea/idea-completion/testData/basic/multifile/InImportedFunctionLiteralParameter/InImportedFunctionLiteralParameter.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first // For KT-3096 No completion in function literal diff --git a/idea/idea-completion/testData/basic/multifile/IncorrectGetters/IncorrectGetters.kt b/idea/idea-completion/testData/basic/multifile/IncorrectGetters/IncorrectGetters.kt index 1618af5451f..44ae8b833e8 100644 --- a/idea/idea-completion/testData/basic/multifile/IncorrectGetters/IncorrectGetters.kt +++ b/idea/idea-completion/testData/basic/multifile/IncorrectGetters/IncorrectGetters.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON fun foo(javaClass: JavaClass) { javaClass. } diff --git a/idea/idea-completion/testData/basic/multifile/KT12124/KT12124.kt b/idea/idea-completion/testData/basic/multifile/KT12124/KT12124.kt index 30736d13ccd..9b2a537c214 100644 --- a/idea/idea-completion/testData/basic/multifile/KT12124/KT12124.kt +++ b/idea/idea-completion/testData/basic/multifile/KT12124/KT12124.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON inline fun T.apply(block: T.() -> Unit): T { block(); return this } val v = JavaClass().apply { diff --git a/idea/idea-completion/testData/basic/multifile/NoExtForOuterFromNested/NoExtForOuterFromNested.kt b/idea/idea-completion/testData/basic/multifile/NoExtForOuterFromNested/NoExtForOuterFromNested.kt index 9b258d43649..53a33e29715 100644 --- a/idea/idea-completion/testData/basic/multifile/NoExtForOuterFromNested/NoExtForOuterFromNested.kt +++ b/idea/idea-completion/testData/basic/multifile/NoExtForOuterFromNested/NoExtForOuterFromNested.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first class OuterClass { diff --git a/idea/idea-completion/testData/basic/multifile/NoExtensionMethodDuplication/NoExtensionMethodDuplication.kt b/idea/idea-completion/testData/basic/multifile/NoExtensionMethodDuplication/NoExtensionMethodDuplication.kt index a6e7605a3fa..4534f72ef53 100644 --- a/idea/idea-completion/testData/basic/multifile/NoExtensionMethodDuplication/NoExtensionMethodDuplication.kt +++ b/idea/idea-completion/testData/basic/multifile/NoExtensionMethodDuplication/NoExtensionMethodDuplication.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package ppp fun f() { diff --git a/idea/idea-completion/testData/basic/multifile/NotImportedFunction/NotImportedFunction.kt b/idea/idea-completion/testData/basic/multifile/NotImportedFunction/NotImportedFunction.kt index 62235cc1883..b78f1b2395a 100644 --- a/idea/idea-completion/testData/basic/multifile/NotImportedFunction/NotImportedFunction.kt +++ b/idea/idea-completion/testData/basic/multifile/NotImportedFunction/NotImportedFunction.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package pack fun testFun() { diff --git a/idea/idea-completion/testData/basic/multifile/NotImportedObject/NotImportedObject.kt b/idea/idea-completion/testData/basic/multifile/NotImportedObject/NotImportedObject.kt index bb1fcfcce50..be8bfe457ad 100644 --- a/idea/idea-completion/testData/basic/multifile/NotImportedObject/NotImportedObject.kt +++ b/idea/idea-completion/testData/basic/multifile/NotImportedObject/NotImportedObject.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first fun testFun() { diff --git a/idea/idea-completion/testData/basic/multifile/NotImportedProperty/NotImportedProperty.kt b/idea/idea-completion/testData/basic/multifile/NotImportedProperty/NotImportedProperty.kt index 34041c0accb..8c6d6b28b7f 100644 --- a/idea/idea-completion/testData/basic/multifile/NotImportedProperty/NotImportedProperty.kt +++ b/idea/idea-completion/testData/basic/multifile/NotImportedProperty/NotImportedProperty.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package pack fun testFun() { diff --git a/idea/idea-completion/testData/basic/multifile/ObjectInTypePosition/ObjectInTypePosition.kt b/idea/idea-completion/testData/basic/multifile/ObjectInTypePosition/ObjectInTypePosition.kt index 137738b035d..1d806c7da2d 100644 --- a/idea/idea-completion/testData/basic/multifile/ObjectInTypePosition/ObjectInTypePosition.kt +++ b/idea/idea-completion/testData/basic/multifile/ObjectInTypePosition/ObjectInTypePosition.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON fun foo(): S // INVOCATION_COUNT: 2 diff --git a/idea/idea-completion/testData/basic/multifile/SuspensionPointInMonitor/SuspensionPointInMonitor.kt b/idea/idea-completion/testData/basic/multifile/SuspensionPointInMonitor/SuspensionPointInMonitor.kt index 09e56332548..5bdd3e091de 100644 --- a/idea/idea-completion/testData/basic/multifile/SuspensionPointInMonitor/SuspensionPointInMonitor.kt +++ b/idea/idea-completion/testData/basic/multifile/SuspensionPointInMonitor/SuspensionPointInMonitor.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON inline val C.v: Int get() = 1 class C { fun f(block: suspend C.() -> Unit): Unit = TODO() diff --git a/idea/idea-completion/testData/basic/multifile/TopLevelFunction/TopLevelFunction.kt b/idea/idea-completion/testData/basic/multifile/TopLevelFunction/TopLevelFunction.kt index 46b8d84fb95..f790f23c0ed 100644 --- a/idea/idea-completion/testData/basic/multifile/TopLevelFunction/TopLevelFunction.kt +++ b/idea/idea-completion/testData/basic/multifile/TopLevelFunction/TopLevelFunction.kt @@ -1,3 +1,4 @@ +// FIR_COMPARISON package first fun firstFun() { diff --git a/idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/NestedClassImport.dependency.kt b/idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/NestedClassImport.dependency.kt deleted file mode 100644 index f8dd4fb94d6..00000000000 --- a/idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/NestedClassImport.dependency.kt +++ /dev/null @@ -1,7 +0,0 @@ -package dependency - -class TopLevelClass { - class NestedClass - - inner class InnerClass -} \ No newline at end of file diff --git a/idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/NestedClassImport.kt b/idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/NestedClassImport.kt deleted file mode 100644 index 06d458137a2..00000000000 --- a/idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/NestedClassImport.kt +++ /dev/null @@ -1,8 +0,0 @@ -import dependency.TopLevelClass.* - -fun usage() { - -} - -// EXIST: NestedClass -// EXIST: InnerClass \ No newline at end of file diff --git a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractMultiFileJvmBasicCompletionTest.kt b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractMultiFileJvmBasicCompletionTest.kt index 53893f36285..a3cf5af2e1e 100644 --- a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractMultiFileJvmBasicCompletionTest.kt +++ b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/AbstractMultiFileJvmBasicCompletionTest.kt @@ -11,7 +11,7 @@ import org.jetbrains.kotlin.platform.jvm.JvmPlatforms import org.jetbrains.kotlin.test.util.KtTestUtil abstract class AbstractMultiFileJvmBasicCompletionTest : KotlinCompletionTestCase() { - protected fun doTest(testPath: String) { + protected open fun doTest(testPath: String) { configureByFile(getTestName(false) + ".kt", "") val shouldFail = testPath.contains("NoSpecifiedType") AstAccessControl.testWithControlledAccessToAst(shouldFail, getFile().getVirtualFile(), getProject(), getTestRootDisposable(), { diff --git a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/ExpectedCompletionUtils.kt b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/ExpectedCompletionUtils.kt index f1f4c4aec80..01c96368257 100644 --- a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/ExpectedCompletionUtils.kt +++ b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/ExpectedCompletionUtils.kt @@ -25,6 +25,7 @@ import org.jetbrains.kotlin.platform.js.isJs import org.jetbrains.kotlin.platform.jvm.JvmPlatforms import org.jetbrains.kotlin.platform.jvm.isJvm import org.jetbrains.kotlin.test.InTextDirectivesUtils +import org.jetbrains.kotlin.test.uitls.IgnoreTests import org.junit.Assert import java.util.* @@ -134,7 +135,8 @@ object ExpectedCompletionUtils { RUNTIME_TYPE, COMPLETION_TYPE_PREFIX, LightClassComputationControl.LIGHT_CLASS_DIRECTIVE, - AstAccessControl.ALLOW_AST_ACCESS_DIRECTIVE + AstAccessControl.ALLOW_AST_ACCESS_DIRECTIVE, + IgnoreTests.DIRECTIVES.FIR_COMPARISON, ) fun itemsShouldExist(fileText: String, platform: TargetPlatform?): Array = when { diff --git a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/KotlinFixtureCompletionBaseTestCase.kt b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/KotlinFixtureCompletionBaseTestCase.kt index adb364b6042..1414663af0d 100644 --- a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/KotlinFixtureCompletionBaseTestCase.kt +++ b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/KotlinFixtureCompletionBaseTestCase.kt @@ -43,7 +43,7 @@ abstract class KotlinFixtureCompletionBaseTestCase : KotlinLightCodeInsightFixtu { completionType, count -> complete(completionType, count) }, defaultCompletionType(), defaultInvocationCount(), - additionalValidDirectives = CompilerTestDirectives.ALL_COMPILER_TEST_DIRECTIVES + "FIR_COMPARISON" + additionalValidDirectives = CompilerTestDirectives.ALL_COMPILER_TEST_DIRECTIVES ) } } diff --git a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/MultiFilePrimitiveJvmBasicCompletionTestGenerated.java b/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/MultiFilePrimitiveJvmBasicCompletionTestGenerated.java deleted file mode 100644 index 6dc95159272..00000000000 --- a/idea/idea-completion/tests/org/jetbrains/kotlin/idea/completion/test/MultiFilePrimitiveJvmBasicCompletionTestGenerated.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright 2010-2021 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.idea.completion.test; - -import com.intellij.testFramework.TestDataPath; -import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; -import org.jetbrains.kotlin.test.KotlinTestUtils; -import org.jetbrains.kotlin.test.util.KtTestUtil; -import org.jetbrains.kotlin.test.TestMetadata; -import org.junit.runner.RunWith; - -import java.io.File; -import java.util.regex.Pattern; - -/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ -@SuppressWarnings("all") -@TestMetadata("idea/idea-completion/testData/basic/multifilePrimitive") -@TestDataPath("$PROJECT_ROOT") -@RunWith(JUnit3RunnerWithInners.class) -public class MultiFilePrimitiveJvmBasicCompletionTestGenerated extends AbstractMultiFileJvmBasicCompletionTest { - private void runTest(String testDataFilePath) throws Exception { - KotlinTestUtils.runTest(this::doTest, this, testDataFilePath); - } - - public void testAllFilesPresentInMultifilePrimitive() throws Exception { - KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("idea/idea-completion/testData/basic/multifilePrimitive"), Pattern.compile("^([^\\.]+)$"), null, false); - } - - @TestMetadata("NestedClassImport") - public void testNestedClassImport() throws Exception { - runTest("idea/idea-completion/testData/basic/multifilePrimitive/NestedClassImport/"); - } -} diff --git a/idea/idea-fir/tests/org/jetbrains/kotlin/idea/completion/AbstractHighLevelMultiFileJvmBasicCompletionTest.kt b/idea/idea-fir/tests/org/jetbrains/kotlin/idea/completion/AbstractHighLevelMultiFileJvmBasicCompletionTest.kt new file mode 100644 index 00000000000..5597e90ae5f --- /dev/null +++ b/idea/idea-fir/tests/org/jetbrains/kotlin/idea/completion/AbstractHighLevelMultiFileJvmBasicCompletionTest.kt @@ -0,0 +1,31 @@ +/* + * Copyright 2010-2021 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.idea.completion + +import com.intellij.codeInsight.completion.CompletionType +import org.jetbrains.kotlin.idea.completion.test.AbstractMultiFileJvmBasicCompletionTest +import org.jetbrains.kotlin.idea.completion.test.testCompletion +import org.jetbrains.kotlin.platform.jvm.JvmPlatforms +import org.jetbrains.kotlin.test.uitls.IgnoreTests +import java.nio.file.Path +import java.nio.file.Paths + +abstract class AbstractHighLevelMultiFileJvmBasicCompletionTest : AbstractMultiFileJvmBasicCompletionTest() { + private val testDataFile: Path + get() = Paths.get(testDataPath, getTestName(false) + ".kt") + + override fun doTest(testPath: String) { + IgnoreTests.runTestIfEnabledByFileDirective(testDataFile, IgnoreTests.DIRECTIVES.FIR_COMPARISON) { + configureByFile(getTestName(false) + ".kt", "") + + testCompletion(file.text, JvmPlatforms.unspecifiedJvmPlatform, { completionType, invocationCount -> + setType(completionType) + complete(invocationCount) + myItems + }, CompletionType.BASIC, 0) + } + } +} \ No newline at end of file diff --git a/idea/idea-fir/tests/org/jetbrains/kotlin/idea/completion/HighLevelMultiFileJvmBasicCompletionTestGenerated.java b/idea/idea-fir/tests/org/jetbrains/kotlin/idea/completion/HighLevelMultiFileJvmBasicCompletionTestGenerated.java new file mode 100644 index 00000000000..7a921d637eb --- /dev/null +++ b/idea/idea-fir/tests/org/jetbrains/kotlin/idea/completion/HighLevelMultiFileJvmBasicCompletionTestGenerated.java @@ -0,0 +1,391 @@ +/* + * Copyright 2010-2021 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.idea.completion; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("idea/idea-completion/testData/basic/multifile") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class HighLevelMultiFileJvmBasicCompletionTestGenerated extends AbstractHighLevelMultiFileJvmBasicCompletionTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest(this::doTest, this, testDataFilePath); + } + + public void testAllFilesPresentInMultifile() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("idea/idea-completion/testData/basic/multifile"), Pattern.compile("^([^\\.]+)$"), null, false); + } + + @TestMetadata("CallableReferenceNotImported") + public void testCallableReferenceNotImported() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CallableReferenceNotImported/"); + } + + @TestMetadata("CallableReferenceNotImportedExtension") + public void testCallableReferenceNotImportedExtension() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CallableReferenceNotImportedExtension/"); + } + + @TestMetadata("CallableReferenceNotImportedExtension2") + public void testCallableReferenceNotImportedExtension2() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CallableReferenceNotImportedExtension2/"); + } + + @TestMetadata("CallablesInExcludedPackage") + public void testCallablesInExcludedPackage() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CallablesInExcludedPackage/"); + } + + @TestMetadata("ClassInExcludedPackage") + public void testClassInExcludedPackage() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ClassInExcludedPackage/"); + } + + @TestMetadata("CompleteFunctionWithNoSpecifiedType") + public void testCompleteFunctionWithNoSpecifiedType() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CompleteFunctionWithNoSpecifiedType/"); + } + + @TestMetadata("CompleteImportedFunction") + public void testCompleteImportedFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CompleteImportedFunction/"); + } + + @TestMetadata("CompletionOnImportedFunction") + public void testCompletionOnImportedFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/CompletionOnImportedFunction/"); + } + + @TestMetadata("DoNotCompleteWithConstraints") + public void testDoNotCompleteWithConstraints() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/DoNotCompleteWithConstraints/"); + } + + @TestMetadata("EnhancementFlexibleTypes") + public void testEnhancementFlexibleTypes() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/EnhancementFlexibleTypes/"); + } + + @TestMetadata("EntriesOfNotImportedEnumFromKotlin") + public void testEntriesOfNotImportedEnumFromKotlin() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/EntriesOfNotImportedEnumFromKotlin/"); + } + + @TestMetadata("EnumEntry") + public void testEnumEntry() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/EnumEntry/"); + } + + @TestMetadata("ExactMatchPreferImported") + public void testExactMatchPreferImported() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExactMatchPreferImported/"); + } + + @TestMetadata("ExcludedClass") + public void testExcludedClass() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExcludedClass/"); + } + + @TestMetadata("ExcludedJavaClass") + public void testExcludedJavaClass() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExcludedJavaClass/"); + } + + @TestMetadata("ExtensionFunction") + public void testExtensionFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExtensionFunction/"); + } + + @TestMetadata("ExtensionFunctionOnImportedFunction") + public void testExtensionFunctionOnImportedFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExtensionFunctionOnImportedFunction/"); + } + + @TestMetadata("ExtensionOnNullable") + public void testExtensionOnNullable() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExtensionOnNullable/"); + } + + @TestMetadata("ExtensionsAndGetPrefix") + public void testExtensionsAndGetPrefix() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExtensionsAndGetPrefix/"); + } + + @TestMetadata("ExtensionsForSmartCast") + public void testExtensionsForSmartCast() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ExtensionsForSmartCast/"); + } + + @TestMetadata("FileRefInStringLiteral") + public void testFileRefInStringLiteral() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/FileRefInStringLiteral/"); + } + + @TestMetadata("FileRefInStringLiteralNoPrefix") + public void testFileRefInStringLiteralNoPrefix() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/FileRefInStringLiteralNoPrefix/"); + } + + @TestMetadata("GroovyClassNameCompletionFromDefaultPackage") + public void testGroovyClassNameCompletionFromDefaultPackage() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/GroovyClassNameCompletionFromDefaultPackage/"); + } + + @TestMetadata("GroovyClassNameCompletionFromNonDefaultPackage") + public void testGroovyClassNameCompletionFromNonDefaultPackage() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/GroovyClassNameCompletionFromNonDefaultPackage/"); + } + + @TestMetadata("HiddenDeclarations") + public void testHiddenDeclarations() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/HiddenDeclarations/"); + } + + @TestMetadata("InImport") + public void testInImport() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/InImport/"); + } + + @TestMetadata("InImportedFunctionLiteralParameter") + public void testInImportedFunctionLiteralParameter() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/InImportedFunctionLiteralParameter/"); + } + + @TestMetadata("IncorrectGetters") + public void testIncorrectGetters() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/IncorrectGetters/"); + } + + @TestMetadata("JavaCallableReference") + public void testJavaCallableReference() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/JavaCallableReference/"); + } + + @TestMetadata("JavaInnerClasses") + public void testJavaInnerClasses() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/JavaInnerClasses/"); + } + + @TestMetadata("KT12124") + public void testKT12124() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/KT12124/"); + } + + @TestMetadata("KT9835") + public void testKT9835() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/KT9835/"); + } + + @TestMetadata("MoreSpecificExtensionGeneric") + public void testMoreSpecificExtensionGeneric() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/MoreSpecificExtensionGeneric/"); + } + + @TestMetadata("MoreSpecificExtensionInDifferentPackage") + public void testMoreSpecificExtensionInDifferentPackage() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/MoreSpecificExtensionInDifferentPackage/"); + } + + @TestMetadata("MoreSpecificExtensionIsPrivate") + public void testMoreSpecificExtensionIsPrivate() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/MoreSpecificExtensionIsPrivate/"); + } + + @TestMetadata("NoAutoInsertionOfNotImported") + public void testNoAutoInsertionOfNotImported() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NoAutoInsertionOfNotImported/"); + } + + @TestMetadata("NoExtForOuterFromNested") + public void testNoExtForOuterFromNested() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NoExtForOuterFromNested/"); + } + + @TestMetadata("NoExtensionMethodDuplication") + public void testNoExtensionMethodDuplication() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NoExtensionMethodDuplication/"); + } + + @TestMetadata("NoGenericFunDuplication") + public void testNoGenericFunDuplication() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NoGenericFunDuplication/"); + } + + @TestMetadata("NotImportedExtensionForImplicitReceiver") + public void testNotImportedExtensionForImplicitReceiver() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedExtensionForImplicitReceiver/"); + } + + @TestMetadata("NotImportedExtensionFunction") + public void testNotImportedExtensionFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedExtensionFunction/"); + } + + @TestMetadata("NotImportedExtensionFunction2") + public void testNotImportedExtensionFunction2() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedExtensionFunction2/"); + } + + @TestMetadata("NotImportedExtensionFunction3") + public void testNotImportedExtensionFunction3() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedExtensionFunction3/"); + } + + @TestMetadata("NotImportedExtensionFunctionAndAlias") + public void testNotImportedExtensionFunctionAndAlias() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedExtensionFunctionAndAlias/"); + } + + @TestMetadata("NotImportedExtensionProperty") + public void testNotImportedExtensionProperty() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedExtensionProperty/"); + } + + @TestMetadata("NotImportedFunction") + public void testNotImportedFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedFunction/"); + } + + @TestMetadata("NotImportedInfixExtension") + public void testNotImportedInfixExtension() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedInfixExtension/"); + } + + @TestMetadata("NotImportedJavaClass") + public void testNotImportedJavaClass() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedJavaClass/"); + } + + @TestMetadata("NotImportedObject") + public void testNotImportedObject() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedObject/"); + } + + @TestMetadata("NotImportedProperty") + public void testNotImportedProperty() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/NotImportedProperty/"); + } + + @TestMetadata("ObjectInTypePosition") + public void testObjectInTypePosition() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ObjectInTypePosition/"); + } + + @TestMetadata("ObjectMembers") + public void testObjectMembers() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ObjectMembers/"); + } + + @TestMetadata("ParameterNameAndTypeForNotImportedAlias") + public void testParameterNameAndTypeForNotImportedAlias() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ParameterNameAndTypeForNotImportedAlias/"); + } + + @TestMetadata("ParameterNameAndTypeNestedClasses") + public void testParameterNameAndTypeNestedClasses() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/ParameterNameAndTypeNestedClasses/"); + } + + @TestMetadata("PreferMemberToExtension") + public void testPreferMemberToExtension() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PreferMemberToExtension/"); + } + + @TestMetadata("PreferMemberToGlobal") + public void testPreferMemberToGlobal() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PreferMemberToGlobal/"); + } + + @TestMetadata("PreferMoreSpecificExtension1") + public void testPreferMoreSpecificExtension1() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PreferMoreSpecificExtension1/"); + } + + @TestMetadata("PreferMoreSpecificExtension2") + public void testPreferMoreSpecificExtension2() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PreferMoreSpecificExtension2/"); + } + + @TestMetadata("PreferMoreSpecificExtension3") + public void testPreferMoreSpecificExtension3() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PreferMoreSpecificExtension3/"); + } + + @TestMetadata("PropertyKeysEmptyString") + public void testPropertyKeysEmptyString() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PropertyKeysEmptyString/"); + } + + @TestMetadata("PropertyKeysNoPrefix") + public void testPropertyKeysNoPrefix() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PropertyKeysNoPrefix/"); + } + + @TestMetadata("PropertyKeysWithPrefix") + public void testPropertyKeysWithPrefix() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/PropertyKeysWithPrefix/"); + } + + @TestMetadata("StaticMembersOfNotImportedClassFromJava") + public void testStaticMembersOfNotImportedClassFromJava() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/StaticMembersOfNotImportedClassFromJava/"); + } + + @TestMetadata("StaticMembersOfNotImportedClassFromKotlin") + public void testStaticMembersOfNotImportedClassFromKotlin() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/StaticMembersOfNotImportedClassFromKotlin/"); + } + + @TestMetadata("StaticMembersOfNotImportedClassFromKotlinObject") + public void testStaticMembersOfNotImportedClassFromKotlinObject() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/StaticMembersOfNotImportedClassFromKotlinObject/"); + } + + @TestMetadata("StaticMembersOfNotImportedClassNameConflict") + public void testStaticMembersOfNotImportedClassNameConflict() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/StaticMembersOfNotImportedClassNameConflict/"); + } + + @TestMetadata("SuspensionPointInMonitor") + public void testSuspensionPointInMonitor() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/SuspensionPointInMonitor/"); + } + + @TestMetadata("SyntheticExtensionDeprecated") + public void testSyntheticExtensionDeprecated() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/SyntheticExtensionDeprecated/"); + } + + @TestMetadata("SyntheticExtensionForGenericClass") + public void testSyntheticExtensionForGenericClass() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/SyntheticExtensionForGenericClass/"); + } + + @TestMetadata("SyntheticExtensionNonVoidSetter") + public void testSyntheticExtensionNonVoidSetter() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/SyntheticExtensionNonVoidSetter/"); + } + + @TestMetadata("TopLevelFunction") + public void testTopLevelFunction() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/TopLevelFunction/"); + } + + @TestMetadata("TypeAliases") + public void testTypeAliases() throws Exception { + runTest("idea/idea-completion/testData/basic/multifile/TypeAliases/"); + } +}