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() {
val unused = 1
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)
val extraOptions = InTextDirectivesUtils.findListWithPrefixes(fileText, "// !LANGUAGE: ").map { "-XXLanguage:$it" }
val classLoader: URLClassLoader
if (InTextDirectivesUtils.getPrefixedBoolean(fileText, "// WITH_MOCK_LIBRARY: ") ?: false) {
if (MOCK_LIBRARY_JAR == null) {
@@ -65,13 +66,13 @@ abstract class AbstractKotlinExceptionFilterTest : KotlinCodeInsightTestCase() {
}
moduleModel.commit()
}
MockLibraryUtil.compileKotlin(path, File(outDir.path), extraClasspath = *arrayOf(mockLibraryPath))
MockLibraryUtil.compileKotlin(path, File(outDir.path), extraOptions, mockLibraryPath)
classLoader = URLClassLoader(
arrayOf(URL(outDir.url + "/"), mockLibraryJar.toURI().toURL()),
ForTestCompileRuntime.runtimeJarClassLoader()
)
} else {
MockLibraryUtil.compileKotlin(path, File(outDir.path))
MockLibraryUtil.compileKotlin(path, File(outDir.path), extraOptions)
classLoader = URLClassLoader(
arrayOf(URL(outDir.url + "/")),
ForTestCompileRuntime.runtimeJarClassLoader()
@@ -58,6 +58,11 @@ public class KotlinExceptionFilterTestGenerated extends AbstractKotlinExceptionF
runTest("idea/testData/debugger/exceptionFilter/inlineFunCallSiteInRegeneratedObject/");
}
@TestMetadata("inlineFunCallSiteNewSmapSyntax")
public void testInlineFunCallSiteNewSmapSyntax() throws Exception {
runTest("idea/testData/debugger/exceptionFilter/inlineFunCallSiteNewSmapSyntax/");
}
@TestMetadata("inlineFunFromLibrary")
public void testInlineFunFromLibrary() throws Exception {
runTest("idea/testData/debugger/exceptionFilter/inlineFunFromLibrary/");