From 577004f2fbafcde38975879470472302d1cc88c7 Mon Sep 17 00:00:00 2001 From: Dmitry Kichinsky Date: Thu, 29 Jan 2026 13:20:20 +0100 Subject: [PATCH] [gradle] IDEA-385212 Move build.gradle.kts completion logic from kotlin to gradle plugin (cherry picked from commit ef914109fee54bee557edb880633bb6111e81718) IJ-CR-192311 GitOrigin-RevId: 5fe17d9396d3bb94ed7eb2b09443c38ef2f5ba99 --- .idea/modules.xml | 1 + build/bazel-generated-file-list.txt | 1 + plugins/gradle/kotlin/BUILD.bazel | 34 +++++ .../gradle/kotlin/intellij.gradle.kotlin.iml | 27 ++++ .../resources/intellij.gradle.kotlin.xml | 18 +++ ...linGradleDependenciesCompletionProvider.kt | 2 +- ...KotlinGradleScriptCompletionContributor.kt | 6 +- .../kotlin/src}/completion/utils.kt | 2 +- plugins/gradle/kotlin/tests/BUILD.bazel | 20 +-- .../tests/intellij.gradle.kotlin.tests.iml | 10 +- .../intellij.gradle.kotlin.tests.xml | 7 - .../AbstractKotlinGradleCompletionTest.kt | 4 +- .../completion/K2GradleCodeInsightTestCase.kt | 123 ++++++++++++++++++ .../KotlinGradleDependenciesCompletionTest.kt | 18 ++- ...tlinGradleLocalDependencyCompletionTest.kt | 83 ++++++------ .../KotlinGradleTomlCompletionTest.kt | 3 +- plugins/gradle/plugin/plugin-content.yaml | 3 + .../plugin/resources/META-INF/plugin.xml | 1 + .../gradle/code-insight-toml/BUILD.bazel | 1 - ...ntellij.kotlin.gradle.codeInsight.toml.iml | 1 - .../K2GradleDependenciesCompletionTest.kt | 12 -- .../gradle-java/tests.shared/BUILD.bazel | 6 - ...kotlin.gradle.gradle-java.tests.shared.iml | 3 - .../gradle/AbstractGradleCodeInsightTest.kt | 2 +- .../BUILD.bazel | 3 - .../kotlin.gradle.scripting.shared.iml | 3 - .../kotlin.gradle.scripting.shared.xml | 4 - 27 files changed, 292 insertions(+), 106 deletions(-) create mode 100644 plugins/gradle/kotlin/BUILD.bazel create mode 100644 plugins/gradle/kotlin/intellij.gradle.kotlin.iml create mode 100644 plugins/gradle/kotlin/resources/intellij.gradle.kotlin.xml rename plugins/{kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared => gradle/kotlin/src}/completion/KotlinGradleDependenciesCompletionProvider.kt (99%) rename plugins/{kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared => gradle/kotlin/src}/completion/KotlinGradleScriptCompletionContributor.kt (67%) rename plugins/{kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared => gradle/kotlin/src}/completion/utils.kt (99%) delete mode 100644 plugins/gradle/kotlin/tests/resources/intellij.gradle.kotlin.tests.xml rename plugins/{kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle => gradle/kotlin/tests/test}/completion/AbstractKotlinGradleCompletionTest.kt (98%) create mode 100644 plugins/gradle/kotlin/tests/test/completion/K2GradleCodeInsightTestCase.kt rename plugins/{kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle => gradle/kotlin/tests/test}/completion/KotlinGradleDependenciesCompletionTest.kt (95%) rename plugins/{kotlin/gradle/scripting/kotlin.gradle.scripting.k2/tests/org/jetbrains/kotlin/gradle/scripting/k2 => gradle/kotlin/tests/test}/completion/KotlinGradleLocalDependencyCompletionTest.kt (96%) rename plugins/gradle/kotlin/tests/test/{ => completion}/KotlinGradleTomlCompletionTest.kt (98%) delete mode 100644 plugins/kotlin/gradle/gradle-java/k2/test/org/jetbrains/kotlin/idea/k2/codeInsight/gradle/completion/K2GradleDependenciesCompletionTest.kt diff --git a/.idea/modules.xml b/.idea/modules.xml index 82fe2631884c..c80b3b01b3c4 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -473,6 +473,7 @@ + diff --git a/build/bazel-generated-file-list.txt b/build/bazel-generated-file-list.txt index 0cdd24b10622..18e5c563a8a1 100644 --- a/build/bazel-generated-file-list.txt +++ b/build/bazel-generated-file-list.txt @@ -1009,6 +1009,7 @@ plugins/gradle/java/plugin plugins/gradle/java/properties plugins/gradle/java/toml plugins/gradle/jps-plugin +plugins/gradle/kotlin plugins/gradle/kotlin/tests plugins/gradle/native plugins/gradle/native/tooling diff --git a/plugins/gradle/kotlin/BUILD.bazel b/plugins/gradle/kotlin/BUILD.bazel new file mode 100644 index 000000000000..844020328aba --- /dev/null +++ b/plugins/gradle/kotlin/BUILD.bazel @@ -0,0 +1,34 @@ +### auto-generated section `build intellij.gradle.kotlin` start +load("@rules_jvm//:jvm.bzl", "jvm_library", "resourcegroup") + +resourcegroup( + name = "kotlin_resources", + srcs = glob(["resources/**/*"]), + strip_prefix = "resources" +) + +jvm_library( + name = "kotlin", + module_name = "intellij.gradle.kotlin", + visibility = ["//visibility:public"], + srcs = glob(["src/**/*.kt", "src/**/*.java", "src/**/*.form"], allow_empty = True), + resources = [":kotlin_resources"], + deps = [ + "@lib//:kotlin-stdlib", + "//platform/core-api:core", + "//platform/util", + "//platform/analysis-api:analysis", + "//plugins/repository-search/common", + "//plugins/gradle/completion", + "//plugins/gradle", + "//platform/analysis-impl", + "//platform/backend/workspace", + "//platform/workspace/storage", + "//platform/editor-ui-api:editor-ui", + "//platform/workspace/jps", + "@lib//:kotlinc-kotlin-compiler-common-provided", + "//java/java-psi-api:psi", + "//java/java-frontback-psi-impl:frontback-psi-impl", + ] +) +### auto-generated section `build intellij.gradle.kotlin` end \ No newline at end of file diff --git a/plugins/gradle/kotlin/intellij.gradle.kotlin.iml b/plugins/gradle/kotlin/intellij.gradle.kotlin.iml new file mode 100644 index 000000000000..0a3ab681b441 --- /dev/null +++ b/plugins/gradle/kotlin/intellij.gradle.kotlin.iml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/gradle/kotlin/resources/intellij.gradle.kotlin.xml b/plugins/gradle/kotlin/resources/intellij.gradle.kotlin.xml new file mode 100644 index 000000000000..69d00a118667 --- /dev/null +++ b/plugins/gradle/kotlin/resources/intellij.gradle.kotlin.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/KotlinGradleDependenciesCompletionProvider.kt b/plugins/gradle/kotlin/src/completion/KotlinGradleDependenciesCompletionProvider.kt similarity index 99% rename from plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/KotlinGradleDependenciesCompletionProvider.kt rename to plugins/gradle/kotlin/src/completion/KotlinGradleDependenciesCompletionProvider.kt index 1f0dd0b189f6..d3cf2657d1ed 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/KotlinGradleDependenciesCompletionProvider.kt +++ b/plugins/gradle/kotlin/src/completion/KotlinGradleDependenciesCompletionProvider.kt @@ -1,5 +1,5 @@ // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.gradle.scripting.shared.completion +package com.intellij.gradle.kotlin.completion import com.intellij.codeInsight.completion.BaseCompletionLookupArranger import com.intellij.codeInsight.completion.CompletionParameters diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/KotlinGradleScriptCompletionContributor.kt b/plugins/gradle/kotlin/src/completion/KotlinGradleScriptCompletionContributor.kt similarity index 67% rename from plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/KotlinGradleScriptCompletionContributor.kt rename to plugins/gradle/kotlin/src/completion/KotlinGradleScriptCompletionContributor.kt index 63162e478daa..5e437b9ffb10 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/KotlinGradleScriptCompletionContributor.kt +++ b/plugins/gradle/kotlin/src/completion/KotlinGradleScriptCompletionContributor.kt @@ -1,10 +1,12 @@ // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.gradle.scripting.shared.completion +package com.intellij.gradle.kotlin.completion import com.intellij.codeInsight.completion.CompletionContributor import com.intellij.codeInsight.completion.CompletionType +import org.jetbrains.annotations.ApiStatus -class KotlinGradleScriptCompletionContributor() : CompletionContributor() { +@ApiStatus.Internal +class KotlinGradleScriptCompletionContributor : CompletionContributor() { init { extend(CompletionType.BASIC, insideScriptBlockPattern(DEPENDENCIES), KotlinGradleDependenciesCompletionProvider()) } diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/utils.kt b/plugins/gradle/kotlin/src/completion/utils.kt similarity index 99% rename from plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/utils.kt rename to plugins/gradle/kotlin/src/completion/utils.kt index 58ef1c2a1cfd..71b38306cb43 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/src/org/jetbrains/kotlin/gradle/scripting/shared/completion/utils.kt +++ b/plugins/gradle/kotlin/src/completion/utils.kt @@ -1,5 +1,5 @@ // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.gradle.scripting.shared.completion +package com.intellij.gradle.kotlin.completion import com.intellij.openapi.diagnostic.Logger import com.intellij.patterns.PlatformPatterns.psiElement diff --git a/plugins/gradle/kotlin/tests/BUILD.bazel b/plugins/gradle/kotlin/tests/BUILD.bazel index cc49f71e9efa..9cae8dc6527f 100644 --- a/plugins/gradle/kotlin/tests/BUILD.bazel +++ b/plugins/gradle/kotlin/tests/BUILD.bazel @@ -1,17 +1,13 @@ ### auto-generated section `build intellij.gradle.kotlin.tests` start -load("@rules_jvm//:jvm.bzl", "jvm_library", "resourcegroup") - -resourcegroup( - name = "tests_test_resources", - srcs = glob(["resources/**/*"]), - strip_prefix = "resources" -) +load("@rules_jvm//:jvm.bzl", "jvm_library") jvm_library( name = "tests", visibility = ["//visibility:public"], srcs = glob([], allow_empty = True), runtime_deps = [ + "//plugins/kotlin/plugin/k2", + "@lib//:kotlin-test", "@lib//:kotlin-stdlib", "//platform/core-api:core", "//platform/util", @@ -21,7 +17,9 @@ jvm_library( "//plugins/repository-search/common", "//plugins/gradle/completion", "//plugins/gradle/toml", + "//plugins/gradle/kotlin", "//plugins/gradle", + "//plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.k2:kotlin-gradle-scripting", ] ) @@ -30,8 +28,9 @@ jvm_library( module_name = "intellij.gradle.kotlin.tests", visibility = ["//visibility:public"], srcs = glob(["test/**/*.kt", "test/**/*.java", "test/**/*.form"], allow_empty = True), - resources = [":tests_test_resources"], deps = [ + "@lib//:assert_j", + "@lib//:kotlin-test", "@lib//:kotlin-stdlib", "//platform/core-api:core", "//platform/util", @@ -43,6 +42,7 @@ jvm_library( "//plugins/gradle/completion", "//plugins/gradle/completion:completion_test_lib", "//plugins/gradle/toml", + "//plugins/gradle/kotlin", "//plugins/gradle", "@lib//:kotlin-test-junit", "//platform/testFramework", @@ -55,6 +55,10 @@ jvm_library( "//plugins/groovy", "//plugins/groovy:groovy_test_lib", "//plugins/kotlin/base/test:test_test_lib", + "@lib//:kotlinc-kotlin-compiler-tests", + "//plugins/kotlin/tests-common:common-tests_test_lib", + "//platform/eel-provider", + "//plugins/kotlin/highlighting/highlighting-minimal:kotlin-highlighting-minimal", ], runtime_deps = [":tests"] ) diff --git a/plugins/gradle/kotlin/tests/intellij.gradle.kotlin.tests.iml b/plugins/gradle/kotlin/tests/intellij.gradle.kotlin.tests.iml index 6c8acb63c555..4630a4af1c90 100644 --- a/plugins/gradle/kotlin/tests/intellij.gradle.kotlin.tests.iml +++ b/plugins/gradle/kotlin/tests/intellij.gradle.kotlin.tests.iml @@ -3,10 +3,12 @@ - + + + @@ -17,6 +19,7 @@ + @@ -26,5 +29,10 @@ + + + + + \ No newline at end of file diff --git a/plugins/gradle/kotlin/tests/resources/intellij.gradle.kotlin.tests.xml b/plugins/gradle/kotlin/tests/resources/intellij.gradle.kotlin.tests.xml deleted file mode 100644 index 62fa113b493a..000000000000 --- a/plugins/gradle/kotlin/tests/resources/intellij.gradle.kotlin.tests.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle/completion/AbstractKotlinGradleCompletionTest.kt b/plugins/gradle/kotlin/tests/test/completion/AbstractKotlinGradleCompletionTest.kt similarity index 98% rename from plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle/completion/AbstractKotlinGradleCompletionTest.kt rename to plugins/gradle/kotlin/tests/test/completion/AbstractKotlinGradleCompletionTest.kt index 5e3691d72350..7eedd0757d99 100644 --- a/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle/completion/AbstractKotlinGradleCompletionTest.kt +++ b/plugins/gradle/kotlin/tests/test/completion/AbstractKotlinGradleCompletionTest.kt @@ -1,5 +1,5 @@ -// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.idea.codeInsight.gradle.completion +// Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.gradle.kotlin.tests.completion import com.intellij.codeInsight.lookup.Lookup import com.intellij.openapi.actionSystem.IdeActions diff --git a/plugins/gradle/kotlin/tests/test/completion/K2GradleCodeInsightTestCase.kt b/plugins/gradle/kotlin/tests/test/completion/K2GradleCodeInsightTestCase.kt new file mode 100644 index 000000000000..313d10dffc04 --- /dev/null +++ b/plugins/gradle/kotlin/tests/test/completion/K2GradleCodeInsightTestCase.kt @@ -0,0 +1,123 @@ +// Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.gradle.kotlin.tests.completion + +import com.intellij.codeInsight.lookup.LookupElement +import com.intellij.platform.testFramework.assertion.collectionAssertion.CollectionAssertions +import com.intellij.testFramework.ExpectedHighlightingData +import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl +import com.intellij.testFramework.runInEdtAndWait +import org.assertj.core.api.Assertions.assertThat +import org.jetbrains.kotlin.gradle.AbstractKotlinGradleCodeInsightBaseTest +import org.jetbrains.kotlin.idea.base.highlighting.dsl.DslStyleUtils +import org.jetbrains.kotlin.idea.test.AssertKotlinPluginMode +import org.jetbrains.kotlin.idea.test.UseK2PluginMode +import org.jetbrains.plugins.gradle.frameworkSupport.GradleDsl +import org.jetbrains.plugins.gradle.testFramework.GradleTestFixtureBuilder +import org.jetbrains.plugins.gradle.testFramework.fixtures.application.GradleProjectTestApplication +import org.jetbrains.plugins.gradle.testFramework.util.withBuildFile +import org.jetbrains.plugins.gradle.testFramework.util.withSettingsFile +import org.junit.jupiter.api.Assertions.assertTrue +import org.junit.jupiter.api.assertNotNull +import org.junit.jupiter.api.assertNull + +@UseK2PluginMode +@GradleProjectTestApplication +@AssertKotlinPluginMode +abstract class K2GradleCodeInsightTestCase : AbstractKotlinGradleCodeInsightBaseTest() { + + protected fun checkCaret(expression: String) { + assertTrue("" in expression) { "Please define caret position in build script." } + } + + fun testIntention(before: String, after: String, intentionPrefix: String) { + testIntention("build.gradle.kts", before, after, intentionPrefix) + } + + fun testIntention(fileName: String, before: String, after: String, intentionPrefix: String) { + checkCaret(before) + writeTextAndCommit(fileName, before) + runInEdtAndWait { + codeInsightFixture.configureFromExistingVirtualFile(getFile(fileName)) + val intention = codeInsightFixture.filterAvailableIntentions(intentionPrefix).single() + codeInsightFixture.launchAction(intention) + codeInsightFixture.checkResult(after) + gradleFixture.fileFixture.rollback(fileName) + } + } + + fun testNoIntentions(before: String, intentionPrefix: String) { + testNoIntentions("build.gradle.kts", before, intentionPrefix) + } + + fun testNoIntentions(fileName: String, before: String, intentionPrefix: String) { + checkCaret(before) + writeTextAndCommit(fileName, before) + runInEdtAndWait { + codeInsightFixture.configureFromExistingVirtualFile(getFile(fileName)) + val intentions = codeInsightFixture.filterAvailableIntentions(intentionPrefix) + assertThat(intentions).isEmpty() + } + } + + fun testHighlighting(expression: String) = testHighlighting("build.gradle.kts", expression) + fun testHighlighting(relativePath: String, expression: String) { + writeTextAndCommit(relativePath, expression) + runInEdtAndWait { + codeInsightFixture.openFileInEditor(getFile(relativePath)) + checkNotNull(codeInsightFixture.editor) { "Fixture is not configured. Call something like configureByFile() or configureByText()" } + val data = ExpectedHighlightingData( + codeInsightFixture.editor.getDocument(), true, true, false, false + ) + // manually register DSL_TYPE_SEVERITY to ignore it + val severity = DslStyleUtils.typeById(1).getSeverity(null) + data.registerHighlightingType(severity.name, ExpectedHighlightingData.ExpectedHighlightingSet(severity, false, false)) + data.init() + (codeInsightFixture as CodeInsightTestFixtureImpl).collectAndCheckHighlighting(data) + } + } + + fun testCompletionStrict(expression: String, vararg completionCandidates: String) = + testCompletion("build.gradle.kts", expression, completionCandidates.toList(), strict = true) + + fun testCompletion(relativePath: String, expression: String, completionCandidates: List, strict: Boolean) = + testCompletion(relativePath, expression) { lookupElements -> + assertNotNull(lookupElements) { + "There was only one completion suggestion, so it was auto completed. Please use `testAutoCompletion()` instead." + } + + if (strict) CollectionAssertions.assertEqualsUnordered(completionCandidates, lookupElements.map { it.lookupString }) + else CollectionAssertions.assertContainsUnordered(completionCandidates, lookupElements.map { it.lookupString }) + } + + fun testCompletion(relativePath: String, expression: String, checker: (Array?) -> Unit) { + checkCaret(expression) + writeTextAndCommit(relativePath, expression) + runInEdtAndWait { + codeInsightFixture.configureFromExistingVirtualFile(getFile(relativePath)) + checker(codeInsightFixture.completeBasic()) + } + } + + fun testAutoCompletion(before: String, after: String) = testAutoCompletion("build.gradle.kts", before, after) + + fun testAutoCompletion(relativePath: String, before: String, after: String) = + testCompletion(relativePath, before) { lookupElements -> + assertNull(lookupElements) { "There was no or more than one completion suggestion, so it was not auto completed." } + codeInsightFixture.checkResult(after) + } + + companion object { + @JvmStatic + protected val WITH_CUSTOM_CONFIGURATIONS_FIXTURE = + GradleTestFixtureBuilder.create("with-custom-configurations") { gradleVersion -> + withSettingsFile(gradleVersion, gradleDsl = GradleDsl.KOTLIN) { + setProjectName("with-custom-configurations") + } + withBuildFile(gradleVersion, gradleDsl = GradleDsl.KOTLIN) { + withKotlinJvmPlugin() + withPrefix { code("val customConf by configurations.creating {}") } + withPrefix { code("val customSourceSet by sourceSets.creating {}") } + } + } + } +} diff --git a/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle/completion/KotlinGradleDependenciesCompletionTest.kt b/plugins/gradle/kotlin/tests/test/completion/KotlinGradleDependenciesCompletionTest.kt similarity index 95% rename from plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle/completion/KotlinGradleDependenciesCompletionTest.kt rename to plugins/gradle/kotlin/tests/test/completion/KotlinGradleDependenciesCompletionTest.kt index 966219e9894a..b53f68e487bb 100644 --- a/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/idea/codeInsight/gradle/completion/KotlinGradleDependenciesCompletionTest.kt +++ b/plugins/gradle/kotlin/tests/test/completion/KotlinGradleDependenciesCompletionTest.kt @@ -1,9 +1,10 @@ -// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.idea.codeInsight.gradle.completion +// Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.gradle.kotlin.tests.completion import com.intellij.codeInsight.completion.CompletionContributor import com.intellij.codeInsight.completion.CompletionContributorEP import com.intellij.codeInsight.lookup.Lookup +import com.intellij.gradle.kotlin.completion.KotlinGradleScriptCompletionContributor import com.intellij.openapi.extensions.DefaultPluginDescriptor import com.intellij.testFramework.ExtensionTestUtil import com.intellij.testFramework.TestDataPath @@ -18,19 +19,24 @@ import org.jetbrains.idea.completion.api.DependencyCompletionRequest import org.jetbrains.idea.completion.api.DependencyCompletionResult import org.jetbrains.idea.completion.api.DependencyCompletionService import org.jetbrains.idea.completion.api.DependencyGroupCompletionRequest -import org.jetbrains.kotlin.gradle.scripting.shared.completion.KotlinGradleScriptCompletionContributor import org.jetbrains.kotlin.idea.base.test.TestRoot +import org.jetbrains.kotlin.idea.test.AssertKotlinPluginMode +import org.jetbrains.kotlin.idea.test.UseK2PluginMode import org.jetbrains.kotlin.idea.testFramework.gradle.KotlinGradleProjectTestCase import org.jetbrains.kotlin.test.TestMetadata import org.jetbrains.plugins.gradle.testFramework.annotations.BaseGradleVersionSource +import org.jetbrains.plugins.gradle.testFramework.fixtures.application.GradleProjectTestApplication import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Disabled import org.junit.jupiter.params.ParameterizedTest +@UseK2PluginMode +@GradleProjectTestApplication +@AssertKotlinPluginMode @TestRoot("idea/tests/testData/") -@TestDataPath("\$CONTENT_ROOT") -@TestMetadata("../../../idea/tests/testData/gradle/completion/buildGradleKts/dependencies") -abstract class KotlinGradleDependenciesCompletionTest: AbstractKotlinGradleCompletionTest() { +@TestDataPath("/") +@TestMetadata("testData/gradle/completion/buildGradleKts/dependencies") +internal class KotlinGradleDependenciesCompletionTest: AbstractKotlinGradleCompletionTest() { private val testCompletionService = object : DependencyCompletionService { override fun suggestCompletions(request: DependencyCompletionRequest): Flow { diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.k2/tests/org/jetbrains/kotlin/gradle/scripting/k2/completion/KotlinGradleLocalDependencyCompletionTest.kt b/plugins/gradle/kotlin/tests/test/completion/KotlinGradleLocalDependencyCompletionTest.kt similarity index 96% rename from plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.k2/tests/org/jetbrains/kotlin/gradle/scripting/k2/completion/KotlinGradleLocalDependencyCompletionTest.kt rename to plugins/gradle/kotlin/tests/test/completion/KotlinGradleLocalDependencyCompletionTest.kt index 3018988c51e1..9326a48c0da1 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.k2/tests/org/jetbrains/kotlin/gradle/scripting/k2/completion/KotlinGradleLocalDependencyCompletionTest.kt +++ b/plugins/gradle/kotlin/tests/test/completion/KotlinGradleLocalDependencyCompletionTest.kt @@ -1,5 +1,5 @@ // Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.gradle.scripting.k2.completion +package com.intellij.gradle.kotlin.tests.completion import com.intellij.gradle.completion.indexer.GradleLocalRepositoryIndexer import com.intellij.gradle.completion.indexer.GradleLocalRepositoryIndexerTestImpl @@ -9,8 +9,7 @@ import com.intellij.platform.eel.provider.LocalEelDescriptor import com.intellij.testFramework.junit5.TestDisposable import com.intellij.testFramework.replaceService import org.gradle.util.GradleVersion -import org.jetbrains.kotlin.gradle.scripting.k2.K2GradleCodeInsightTestCase -import org.jetbrains.plugins.gradle.testFramework.annotations.AllGradleVersionsSource +import org.jetbrains.plugins.gradle.testFramework.annotations.BaseGradleVersionSource import org.junit.jupiter.params.ParameterizedTest class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() { @@ -26,7 +25,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test no suggestions`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -44,7 +43,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test version suggestions after artifact`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -68,7 +67,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test version suggestions after a colon`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -92,7 +91,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test version suggestions`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -115,7 +114,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test version suggestions after a dot`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -138,7 +137,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test version auto completion`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -164,7 +163,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test custom configuration`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -188,7 +187,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test custom string configuration`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -212,7 +211,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test suggestions after org`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -239,7 +238,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test extra artifact suggestions`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -265,7 +264,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test artifact suggestions caret after group`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -292,7 +291,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test artifact suggestions caret after group colon`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -319,7 +318,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test artifact suggestions caret in artifact`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -347,7 +346,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test caret in empty string`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -377,7 +376,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test single part being artifact`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -398,7 +397,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test single part being group`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -420,7 +419,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test single part being artifact or group`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -444,7 +443,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test each part uses contains`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -464,7 +463,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test no suggestions outside dependencies block`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -481,7 +480,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test no suggestions in comments`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -499,7 +498,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test whitespace inside string is tolerated`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -519,7 +518,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test caret after a dash`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -539,7 +538,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named dependencyNotation argument`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -561,7 +560,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() // NAMED ARGUMENTS NOTATION @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments empty group with no name and no version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -586,7 +585,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments partial group with no name and no version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -609,7 +608,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments empty group with name and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -631,7 +630,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments partial group with name and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -657,7 +656,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments empty group with empty name and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -682,7 +681,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments empty group with name and no version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -703,7 +702,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments empty version with group and name`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -725,7 +724,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments empty name with group and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -748,7 +747,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test named arguments partial name with group and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -771,7 +770,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test out-of-order named arguments empty group with name and no version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -792,7 +791,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test out-of-order named arguments empty group with name and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -813,7 +812,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test positional arguments empty group with name and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -834,7 +833,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test positional arguments empty name with group and no version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -857,7 +856,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test positional arguments empty name with group and empty version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -880,7 +879,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test positional arguments partial name with group and no version`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( @@ -904,7 +903,7 @@ class KotlinGradleLocalDependencyCompletionTest : K2GradleCodeInsightTestCase() } @ParameterizedTest - @AllGradleVersionsSource + @BaseGradleVersionSource fun `test positional arguments empty version with group and name`(gradleVersion: GradleVersion) { test(gradleVersion, WITH_CUSTOM_CONFIGURATIONS_FIXTURE) { configureLocalIndex( diff --git a/plugins/gradle/kotlin/tests/test/KotlinGradleTomlCompletionTest.kt b/plugins/gradle/kotlin/tests/test/completion/KotlinGradleTomlCompletionTest.kt similarity index 98% rename from plugins/gradle/kotlin/tests/test/KotlinGradleTomlCompletionTest.kt rename to plugins/gradle/kotlin/tests/test/completion/KotlinGradleTomlCompletionTest.kt index b726459d9d73..92440323b0f8 100644 --- a/plugins/gradle/kotlin/tests/test/KotlinGradleTomlCompletionTest.kt +++ b/plugins/gradle/kotlin/tests/test/completion/KotlinGradleTomlCompletionTest.kt @@ -1,5 +1,5 @@ // Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package com.intellij.gradle.kotlin.tests +package com.intellij.gradle.kotlin.tests.completion import com.intellij.codeInsight.lookup.Lookup import com.intellij.testFramework.replaceService @@ -14,7 +14,6 @@ import org.jetbrains.idea.completion.api.DependencyCompletionResult import org.jetbrains.idea.completion.api.DependencyCompletionService import org.jetbrains.idea.completion.api.DependencyGroupCompletionRequest import org.jetbrains.idea.completion.api.DependencyVersionCompletionRequest -import org.jetbrains.kotlin.idea.codeInsight.gradle.completion.AbstractKotlinGradleCompletionTest import org.jetbrains.kotlin.idea.testFramework.gradle.KotlinGradleProjectTestCase import org.jetbrains.plugins.gradle.testFramework.annotations.BaseGradleVersionSource import org.jetbrains.plugins.gradle.testFramework.fixtures.application.GradleProjectTestApplication diff --git a/plugins/gradle/plugin/plugin-content.yaml b/plugins/gradle/plugin/plugin-content.yaml index 1b9d8c709ef2..12c2f73515b4 100644 --- a/plugins/gradle/plugin/plugin-content.yaml +++ b/plugins/gradle/plugin/plugin-content.yaml @@ -149,6 +149,9 @@ - name: lib/modules/intellij.gradle.completion.jar contentModules: - name: intellij.gradle.completion +- name: lib/modules/intellij.gradle.kotlin.jar + contentModules: + - name: intellij.gradle.kotlin - name: lib/modules/intellij.gradle.properties.jar contentModules: - name: intellij.gradle.properties diff --git a/plugins/gradle/plugin/resources/META-INF/plugin.xml b/plugins/gradle/plugin/resources/META-INF/plugin.xml index d134bed1fb54..549f3f5b065b 100644 --- a/plugins/gradle/plugin/resources/META-INF/plugin.xml +++ b/plugins/gradle/plugin/resources/META-INF/plugin.xml @@ -22,6 +22,7 @@ + diff --git a/plugins/kotlin/gradle/code-insight-toml/BUILD.bazel b/plugins/kotlin/gradle/code-insight-toml/BUILD.bazel index 8b4fc8f1e36e..e0e4a3ef42dc 100644 --- a/plugins/kotlin/gradle/code-insight-toml/BUILD.bazel +++ b/plugins/kotlin/gradle/code-insight-toml/BUILD.bazel @@ -14,7 +14,6 @@ jvm_library( srcs = glob(["src/**/*.kt", "src/**/*.java", "src/**/*.form"], allow_empty = True), resources = [":kotlin-gradle-codeInsight-toml_resources"], deps = [ - "//plugins/gradle/completion", "//plugins/toml/core", "@lib//:kotlinc-kotlin-compiler-common", "//platform/core-api:core", diff --git a/plugins/kotlin/gradle/code-insight-toml/intellij.kotlin.gradle.codeInsight.toml.iml b/plugins/kotlin/gradle/code-insight-toml/intellij.kotlin.gradle.codeInsight.toml.iml index b109a754dc57..91e25fbcfd3e 100644 --- a/plugins/kotlin/gradle/code-insight-toml/intellij.kotlin.gradle.codeInsight.toml.iml +++ b/plugins/kotlin/gradle/code-insight-toml/intellij.kotlin.gradle.codeInsight.toml.iml @@ -7,7 +7,6 @@ - diff --git a/plugins/kotlin/gradle/gradle-java/k2/test/org/jetbrains/kotlin/idea/k2/codeInsight/gradle/completion/K2GradleDependenciesCompletionTest.kt b/plugins/kotlin/gradle/gradle-java/k2/test/org/jetbrains/kotlin/idea/k2/codeInsight/gradle/completion/K2GradleDependenciesCompletionTest.kt deleted file mode 100644 index 65ac36c8264e..000000000000 --- a/plugins/kotlin/gradle/gradle-java/k2/test/org/jetbrains/kotlin/idea/k2/codeInsight/gradle/completion/K2GradleDependenciesCompletionTest.kt +++ /dev/null @@ -1,12 +0,0 @@ -// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.idea.k2.codeInsight.gradle.completion - -import org.jetbrains.kotlin.idea.codeInsight.gradle.completion.KotlinGradleDependenciesCompletionTest -import org.jetbrains.kotlin.idea.test.AssertKotlinPluginMode -import org.jetbrains.kotlin.idea.test.UseK2PluginMode -import org.jetbrains.plugins.gradle.testFramework.fixtures.application.GradleProjectTestApplication - -@UseK2PluginMode -@GradleProjectTestApplication -@AssertKotlinPluginMode -class K2GradleDependenciesCompletionTest: KotlinGradleDependenciesCompletionTest() \ No newline at end of file diff --git a/plugins/kotlin/gradle/gradle-java/tests.shared/BUILD.bazel b/plugins/kotlin/gradle/gradle-java/tests.shared/BUILD.bazel index a06a70c310eb..053accf3f946 100644 --- a/plugins/kotlin/gradle/gradle-java/tests.shared/BUILD.bazel +++ b/plugins/kotlin/gradle/gradle-java/tests.shared/BUILD.bazel @@ -16,7 +16,6 @@ jvm_library( "@lib//:kotlin-test", "@lib//:kotlinc-kotlin-compiler-tests", "//plugins/kotlin/gradle/gradle-java", - "//plugins/repository-search/common", ] ) @@ -109,11 +108,6 @@ jvm_library( "//java/java-runtime:rt", "//platform/execution", "//plugins/junit", - "//plugins/repository-search/common", - "//plugins/repository-search/common:common_test_lib", - "//plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared:kotlin-gradle-scripting-shared", - "//platform/util/text-matching", - "//platform/util/text-matching:text-matching_test_lib", ], exports = ["@lib//:kotlin-gradle-plugin-idea"], runtime_deps = [":tests.shared"] diff --git a/plugins/kotlin/gradle/gradle-java/tests.shared/kotlin.gradle.gradle-java.tests.shared.iml b/plugins/kotlin/gradle/gradle-java/tests.shared/kotlin.gradle.gradle-java.tests.shared.iml index e65b9465f8f5..853b0f0d2507 100644 --- a/plugins/kotlin/gradle/gradle-java/tests.shared/kotlin.gradle.gradle-java.tests.shared.iml +++ b/plugins/kotlin/gradle/gradle-java/tests.shared/kotlin.gradle.gradle-java.tests.shared.iml @@ -79,8 +79,5 @@ - - - \ No newline at end of file diff --git a/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/gradle/AbstractGradleCodeInsightTest.kt b/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/gradle/AbstractGradleCodeInsightTest.kt index 944fb3b683fa..0670c7720dbf 100644 --- a/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/gradle/AbstractGradleCodeInsightTest.kt +++ b/plugins/kotlin/gradle/gradle-java/tests.shared/test/org/jetbrains/kotlin/gradle/AbstractGradleCodeInsightTest.kt @@ -129,7 +129,7 @@ abstract class AbstractGradleCodeInsightTest : AbstractKotlinGradleCodeInsightBa ) } - class TestFile internal constructor(val path: String, val content: String, val directives: Directives) + class TestFile(val path: String, val content: String, val directives: Directives) companion object { @JvmStatic diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/BUILD.bazel b/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/BUILD.bazel index b27581b8e9c9..d0c1bb4ff37a 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/BUILD.bazel +++ b/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/BUILD.bazel @@ -52,9 +52,6 @@ jvm_library( "//java/java-psi-api:psi", "//platform/lang-api:lang", "//platform/indexing-api:indexing", - "//platform/eel-provider", - "//plugins/repository-search/common", - "//plugins/gradle/completion", ] ) ### auto-generated section `build kotlin.gradle.scripting.shared` end \ No newline at end of file diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/kotlin.gradle.scripting.shared.iml b/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/kotlin.gradle.scripting.shared.iml index 3bb303f4dd93..4761111389d9 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/kotlin.gradle.scripting.shared.iml +++ b/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/kotlin.gradle.scripting.shared.iml @@ -47,8 +47,5 @@ - - - \ No newline at end of file diff --git a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/resources/kotlin.gradle.scripting.shared.xml b/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/resources/kotlin.gradle.scripting.shared.xml index fa8e79ec5f3e..3b96d1fb79b3 100644 --- a/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/resources/kotlin.gradle.scripting.shared.xml +++ b/plugins/kotlin/gradle/scripting/kotlin.gradle.scripting.shared/resources/kotlin.gradle.scripting.shared.xml @@ -15,10 +15,6 @@ -