diff --git a/.idea/modules.xml b/.idea/modules.xml index 7213806c38d9..5543eb66b35c 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -1012,6 +1012,7 @@ + diff --git a/java/java-tests/intellij.java.tests.iml b/java/java-tests/intellij.java.tests.iml index 77fa6d9bd46b..3f1b8c3dc3f1 100644 --- a/java/java-tests/intellij.java.tests.iml +++ b/java/java-tests/intellij.java.tests.iml @@ -87,5 +87,6 @@ + \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/ide/navigationToolbar/JavaNavBarTest.java b/java/java-tests/testSrc/com/intellij/ide/navigationToolbar/JavaNavBarTest.java index 931d5b25cb63..4acaabc74929 100644 --- a/java/java-tests/testSrc/com/intellij/ide/navigationToolbar/JavaNavBarTest.java +++ b/java/java-tests/testSrc/com/intellij/ide/navigationToolbar/JavaNavBarTest.java @@ -8,7 +8,7 @@ import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase; import java.util.List; -import static com.intellij.ide.navbar.tests.TestFrameworkKt.contextNavBarPathStrings; +import static com.intellij.platform.navbar.compatibility.testFramework.TestFrameworkKt.contextNavBarPathStrings; public class JavaNavBarTest extends LightJavaCodeInsightFixtureTestCase { @Override diff --git a/platform/lang-impl/src/com/intellij/ide/navbar/actions/actions.kt b/platform/lang-impl/src/com/intellij/ide/navbar/actions/actions.kt index ee23905d2e66..512f9cc68200 100644 --- a/platform/lang-impl/src/com/intellij/ide/navbar/actions/actions.kt +++ b/platform/lang-impl/src/com/intellij/ide/navbar/actions/actions.kt @@ -23,6 +23,7 @@ import com.intellij.psi.PsiDirectory import com.intellij.psi.PsiElement import com.intellij.psi.util.PsiUtilCore import com.intellij.util.containers.toArray +import org.jetbrains.annotations.VisibleForTesting /** * Fast extension data without selection (allows to override cut/copy/paste providers) @@ -59,7 +60,8 @@ internal class BgtDataRule : GetDataRule { } } -internal fun getBgData(project: Project, selection: List>, dataId: String): Any? { +@VisibleForTesting +fun getBgData(project: Project, selection: List>, dataId: String): Any? { val selectedItems = lazy(LazyThreadSafetyMode.NONE) { ApplicationManager.getApplication().assertReadAccessAllowed() selection.mapNotNull { diff --git a/platform/lang-impl/src/com/intellij/ide/navbar/impl/DefaultNavBarItemProvider.kt b/platform/lang-impl/src/com/intellij/ide/navbar/impl/DefaultNavBarItemProvider.kt index 61d09e55085f..2bac3bab6412 100644 --- a/platform/lang-impl/src/com/intellij/ide/navbar/impl/DefaultNavBarItemProvider.kt +++ b/platform/lang-impl/src/com/intellij/ide/navbar/impl/DefaultNavBarItemProvider.kt @@ -19,6 +19,7 @@ import com.intellij.psi.util.PsiUtilCore.ensureValid import com.intellij.psi.util.PsiUtilCore.getVirtualFile import com.intellij.util.concurrency.annotations.RequiresBackgroundThread import com.intellij.util.concurrency.annotations.RequiresReadLock +import org.jetbrains.annotations.VisibleForTesting /** * Delegates old implementations @@ -177,7 +178,8 @@ internal fun ensurePsiFromExtensionIsValid(psi: PsiElement, message: String, cla } } -internal fun compatibilityNavBarItem(o: Any, ext: NavBarModelExtension?): NavBarItem? { +@VisibleForTesting +fun compatibilityNavBarItem(o: Any, ext: NavBarModelExtension?): NavBarItem? { return when (o) { is Project -> { ProjectNavBarItem(o) diff --git a/platform/navbar.compatibility/testFramework/intellij.platform.navbar.compatibility.testFramework.iml b/platform/navbar.compatibility/testFramework/intellij.platform.navbar.compatibility.testFramework.iml new file mode 100644 index 000000000000..f421e5642090 --- /dev/null +++ b/platform/navbar.compatibility/testFramework/intellij.platform.navbar.compatibility.testFramework.iml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/platform/lang-impl/src/com/intellij/ide/navbar/tests/testFramework.kt b/platform/navbar.compatibility/testFramework/src/testFramework.kt similarity index 96% rename from platform/lang-impl/src/com/intellij/ide/navbar/tests/testFramework.kt rename to platform/navbar.compatibility/testFramework/src/testFramework.kt index 5fb6051323a2..d673eee043b4 100644 --- a/platform/lang-impl/src/com/intellij/ide/navbar/tests/testFramework.kt +++ b/platform/navbar.compatibility/testFramework/src/testFramework.kt @@ -1,5 +1,5 @@ // Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package com.intellij.ide.navbar.tests +package com.intellij.platform.navbar.compatibility.testFramework import com.intellij.ide.navbar.actions.getBgData import com.intellij.ide.navbar.impl.DefaultNavBarItem @@ -9,7 +9,6 @@ import com.intellij.openapi.actionSystem.DataKey import com.intellij.openapi.project.Project import com.intellij.platform.navbar.NavBarItemPresentation import com.intellij.platform.navbar.backend.NavBarItem -import com.intellij.platform.navbar.backend.NavBarItemProvider import com.intellij.platform.navbar.backend.impl.children import com.intellij.platform.navbar.backend.impl.pathToItem import com.intellij.platform.navbar.ide.contextModel diff --git a/plugins/kotlin/idea/tests/kotlin.idea.tests.iml b/plugins/kotlin/idea/tests/kotlin.idea.tests.iml index 44ab502eb1d5..0c4e6555adb1 100644 --- a/plugins/kotlin/idea/tests/kotlin.idea.tests.iml +++ b/plugins/kotlin/idea/tests/kotlin.idea.tests.iml @@ -138,5 +138,6 @@ + \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/navigationToolbar/AbstractKotlinNavBarTest.kt b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/navigationToolbar/AbstractKotlinNavBarTest.kt index 19a28b4f49d7..fd9d9dd91c44 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/navigationToolbar/AbstractKotlinNavBarTest.kt +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/navigationToolbar/AbstractKotlinNavBarTest.kt @@ -2,8 +2,8 @@ package org.jetbrains.kotlin.idea.navigationToolbar -import com.intellij.ide.navbar.tests.contextNavBarPathStrings import com.intellij.openapi.editor.ex.EditorEx +import com.intellij.platform.navbar.compatibility.testFramework.contextNavBarPathStrings import org.jetbrains.kotlin.idea.base.test.InTextDirectivesUtils import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase