IDEA: test the plugin's ability to parse correct JSR-045 data

This commit is contained in:
pyos
2020-05-14 12:31:08 +02:00
committed by max-kammerer
parent c51c537504
commit 73e91af792
4 changed files with 22 additions and 2 deletions
@@ -3,6 +3,7 @@ fun box() {
} }
inline fun foo() { inline fun foo() {
val unused = 1
null!! null!!
} }
@@ -0,0 +1,13 @@
fun box() {
foo()
}
inline fun foo() {
val unused = 1
null!!
}
// !LANGUAGE: +CorrectSourceMappingSyntax
// NAVIGATE_TO_CALL_SITE
// FILE: inlineFunCallSiteNewSmapSyntax.kt
// LINE: 2
@@ -46,6 +46,7 @@ abstract class AbstractKotlinExceptionFilterTest : KotlinCodeInsightTestCase() {
} }
PsiTestUtil.setCompilerOutputPath(module, outDir.url, false) PsiTestUtil.setCompilerOutputPath(module, outDir.url, false)
val extraOptions = InTextDirectivesUtils.findListWithPrefixes(fileText, "// !LANGUAGE: ").map { "-XXLanguage:$it" }
val classLoader: URLClassLoader val classLoader: URLClassLoader
if (InTextDirectivesUtils.getPrefixedBoolean(fileText, "// WITH_MOCK_LIBRARY: ") ?: false) { if (InTextDirectivesUtils.getPrefixedBoolean(fileText, "// WITH_MOCK_LIBRARY: ") ?: false) {
if (MOCK_LIBRARY_JAR == null) { if (MOCK_LIBRARY_JAR == null) {
@@ -65,13 +66,13 @@ abstract class AbstractKotlinExceptionFilterTest : KotlinCodeInsightTestCase() {
} }
moduleModel.commit() moduleModel.commit()
} }
MockLibraryUtil.compileKotlin(path, File(outDir.path), extraClasspath = *arrayOf(mockLibraryPath)) MockLibraryUtil.compileKotlin(path, File(outDir.path), extraOptions, mockLibraryPath)
classLoader = URLClassLoader( classLoader = URLClassLoader(
arrayOf(URL(outDir.url + "/"), mockLibraryJar.toURI().toURL()), arrayOf(URL(outDir.url + "/"), mockLibraryJar.toURI().toURL()),
ForTestCompileRuntime.runtimeJarClassLoader() ForTestCompileRuntime.runtimeJarClassLoader()
) )
} else { } else {
MockLibraryUtil.compileKotlin(path, File(outDir.path)) MockLibraryUtil.compileKotlin(path, File(outDir.path), extraOptions)
classLoader = URLClassLoader( classLoader = URLClassLoader(
arrayOf(URL(outDir.url + "/")), arrayOf(URL(outDir.url + "/")),
ForTestCompileRuntime.runtimeJarClassLoader() ForTestCompileRuntime.runtimeJarClassLoader()
@@ -58,6 +58,11 @@ public class KotlinExceptionFilterTestGenerated extends AbstractKotlinExceptionF
runTest("idea/testData/debugger/exceptionFilter/inlineFunCallSiteInRegeneratedObject/"); runTest("idea/testData/debugger/exceptionFilter/inlineFunCallSiteInRegeneratedObject/");
} }
@TestMetadata("inlineFunCallSiteNewSmapSyntax")
public void testInlineFunCallSiteNewSmapSyntax() throws Exception {
runTest("idea/testData/debugger/exceptionFilter/inlineFunCallSiteNewSmapSyntax/");
}
@TestMetadata("inlineFunFromLibrary") @TestMetadata("inlineFunFromLibrary")
public void testInlineFunFromLibrary() throws Exception { public void testInlineFunFromLibrary() throws Exception {
runTest("idea/testData/debugger/exceptionFilter/inlineFunFromLibrary/"); runTest("idea/testData/debugger/exceptionFilter/inlineFunFromLibrary/");