[devkit] support line marker to plugin.xml for EPs with >1 CTOR parameter (IDEA-351950)

add more tests

GitOrigin-RevId: 671729c6a760a7b8aae4d39a51f5d8afc830a0ff
This commit is contained in:
Yann Cébron
2024-04-17 15:24:55 +00:00
committed by intellij-monorepo-bot
parent 619aea07d6
commit 08dd3d9064
6 changed files with 29 additions and 10 deletions
@@ -1,6 +0,0 @@
import com.intellij.openapi.project.Project;
import kotlinx.coroutines.CoroutineScope
public class My<caret>Extension {
public MyExtension(Project project, CoroutineScope cs) {}
}
@@ -0,0 +1,3 @@
public class My<caret>ExtensionNoParameters {
public MyExtensionNoParameters() {}
}
@@ -0,0 +1,5 @@
import com.intellij.openapi.project.Project;
public class My<caret>ExtensionSingleParameter {
public MyExtensionSingleParameter(Project project) {}
}
@@ -0,0 +1,6 @@
import com.intellij.openapi.project.Project;
import kotlinx.coroutines.CoroutineScope
public class My<caret>ExtensionTwoParameters {
public MyExtensionTwoParameters(Project project, CoroutineScope cs) {}
}
@@ -8,7 +8,10 @@
</wrongTag>
<extensions>
<myEp implementation="MyExtension"/>
<myEp implementation="MyExtensionNoParameters"/>
<myEp implementation="MyExtensionSingleParameter"/>
<myEp implementation="MyExtensionTwoParameters"/>
<myEp implementation="MyNestedClassExtension$Nested"/>
</extensions>
</idea-plugin>
@@ -1,4 +1,4 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.idea.devkit.navigation;
import com.intellij.testFramework.TestDataPath;
@@ -18,8 +18,16 @@ public class ExtensionPluginDescriptorDeclarationRelatedItemLineMarkerProviderTe
doTestInvalidExtension("MyInvalidExtension.java");
}
public void testExtension() {
doTestExtension("MyExtension.java", "<myEp implementation=\"MyExtension\"/>");
public void testExtensionNoParameters() {
doTestExtension("MyExtensionNoParameters.java", "<myEp implementation=\"MyExtensionNoParameters\"/>");
}
public void testExtensionSingleParameter() {
doTestExtension("MyExtensionSingleParameter.java", "<myEp implementation=\"MyExtensionSingleParameter\"/>");
}
public void testExtensionTwoParameters() {
doTestExtension("MyExtensionTwoParameters.java", "<myEp implementation=\"MyExtensionTwoParameters\"/>");
}
public void testNestedClassExtension() {