diff --git a/generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt b/generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt index 6527475eab3..4ea1e35e1cc 100755 --- a/generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt +++ b/generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt @@ -458,7 +458,7 @@ fun main(args: Array) { } testClass() { - model("parameterInfo", recursive = true, excludeDirs = listOf("withLib/sharedLib")) + model("parameterInfo", recursive = true, excludeDirs = listOf("withLib1/sharedLib", "withLib2/sharedLib", "withLib3/sharedLib")) } testClass() { diff --git a/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinFunctionParameterInfoHandler.kt b/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinFunctionParameterInfoHandler.kt index c66722ffd46..7918d3a756c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinFunctionParameterInfoHandler.kt +++ b/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinFunctionParameterInfoHandler.kt @@ -355,7 +355,12 @@ abstract class KotlinParameterInfoWithCallHandlerBase) +} + +/* +Text: (sam: ((number: Int, ss: String!) -> Unit)!), Disabled: false, Strikeout: false, Green: false +Text: (sam: JavaSAM!), Disabled: false, Strikeout: false, Green: false*/ diff --git a/idea/testData/parameterInfo/withLib3/sharedLib/p/JavaSAM.java b/idea/testData/parameterInfo/withLib3/sharedLib/p/JavaSAM.java new file mode 100644 index 00000000000..9b4d72451f6 --- /dev/null +++ b/idea/testData/parameterInfo/withLib3/sharedLib/p/JavaSAM.java @@ -0,0 +1,5 @@ +package p; + +public interface JavaSAM { + public void foo(int number, String ss); +} \ No newline at end of file diff --git a/idea/testData/parameterInfo/withLib3/useJavaSAMFromLib.kt b/idea/testData/parameterInfo/withLib3/useJavaSAMFromLib.kt new file mode 100644 index 00000000000..2579368a36b --- /dev/null +++ b/idea/testData/parameterInfo/withLib3/useJavaSAMFromLib.kt @@ -0,0 +1,10 @@ +package test + + +fun main() { + p.JavaSAM() +} + +/* +Text: (function: (number: Int, ss: String!) -> Unit), Disabled: false, Strikeout: false, Green: true +*/ \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/AbstractParameterInfoTest.kt b/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/AbstractParameterInfoTest.kt index 58a49a4c232..8a03c0e7991 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/AbstractParameterInfoTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/AbstractParameterInfoTest.kt @@ -32,13 +32,12 @@ import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.psiUtil.allChildren import org.jetbrains.kotlin.test.InTextDirectivesUtils import org.jetbrains.kotlin.test.KotlinTestUtils -import org.jetbrains.kotlin.test.TestMetadata import org.junit.Assert abstract class AbstractParameterInfoTest : LightCodeInsightFixtureTestCase() { override fun getProjectDescriptor(): LightProjectDescriptor { val root = KotlinTestUtils.getTestsRoot(this.javaClass) - if (root.endsWith("Lib")) { + if (root.contains("Lib")) { return JdkAndMockLibraryProjectDescriptor( "$root/sharedLib", true, true, false, false ) diff --git a/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/ParameterInfoTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/ParameterInfoTestGenerated.java index 301202c6c2b..3baed2aecff 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/ParameterInfoTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/ParameterInfoTestGenerated.java @@ -32,7 +32,7 @@ import java.util.regex.Pattern; @RunWith(JUnit3RunnerWithInners.class) public class ParameterInfoTestGenerated extends AbstractParameterInfoTest { public void testAllFilesPresentInParameterInfo() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/parameterInfo"), Pattern.compile("^(.+)\\.kt$"), true, "withLib/sharedLib"); + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/parameterInfo"), Pattern.compile("^(.+)\\.kt$"), true, "withLib1/sharedLib", "withLib2/sharedLib", "withLib3/sharedLib"); } @TestMetadata("idea/testData/parameterInfo/arrayAccess") @@ -368,17 +368,47 @@ public class ParameterInfoTestGenerated extends AbstractParameterInfoTest { } } - @TestMetadata("idea/testData/parameterInfo/withLib") + @TestMetadata("idea/testData/parameterInfo/withLib1") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) - public static class WithLib extends AbstractParameterInfoTest { - public void testAllFilesPresentInWithLib() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/parameterInfo/withLib"), Pattern.compile("^(.+)\\.kt$"), true, "sharedLib"); + public static class WithLib1 extends AbstractParameterInfoTest { + public void testAllFilesPresentInWithLib1() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/parameterInfo/withLib1"), Pattern.compile("^(.+)\\.kt$"), true, "sharedLib"); } @TestMetadata("useJavaFromLib.kt") public void testUseJavaFromLib() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("idea/testData/parameterInfo/withLib/useJavaFromLib.kt"); + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/parameterInfo/withLib1/useJavaFromLib.kt"); + doTest(fileName); + } + } + + @TestMetadata("idea/testData/parameterInfo/withLib2") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class WithLib2 extends AbstractParameterInfoTest { + public void testAllFilesPresentInWithLib2() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/parameterInfo/withLib2"), Pattern.compile("^(.+)\\.kt$"), true, "sharedLib"); + } + + @TestMetadata("useJavaSAMFromLib.kt") + public void testUseJavaSAMFromLib() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/parameterInfo/withLib2/useJavaSAMFromLib.kt"); + doTest(fileName); + } + } + + @TestMetadata("idea/testData/parameterInfo/withLib3") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class WithLib3 extends AbstractParameterInfoTest { + public void testAllFilesPresentInWithLib3() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/parameterInfo/withLib3"), Pattern.compile("^(.+)\\.kt$"), true, "sharedLib"); + } + + @TestMetadata("useJavaSAMFromLib.kt") + public void testUseJavaSAMFromLib() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/parameterInfo/withLib3/useJavaSAMFromLib.kt"); doTest(fileName); } }