[Test] Add directive which allows to attach debugger to instance of JVM in box test
This commit is contained in:
committed by
teamcityserver
parent
1fa74ef939
commit
972211f8e6
+2
@@ -14,6 +14,7 @@ import org.jetbrains.kotlin.psi.KtFile
|
|||||||
import org.jetbrains.kotlin.test.TestJdkKind
|
import org.jetbrains.kotlin.test.TestJdkKind
|
||||||
import org.jetbrains.kotlin.test.clientserver.TestProxy
|
import org.jetbrains.kotlin.test.clientserver.TestProxy
|
||||||
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives
|
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives
|
||||||
|
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.ATTACH_DEBUGGER
|
||||||
import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.JDK_KIND
|
import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.JDK_KIND
|
||||||
import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives.ENABLE_JVM_PREVIEW
|
import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives.ENABLE_JVM_PREVIEW
|
||||||
import org.jetbrains.kotlin.test.directives.model.singleOrZeroValue
|
import org.jetbrains.kotlin.test.directives.model.singleOrZeroValue
|
||||||
@@ -202,6 +203,7 @@ class JvmBoxRunner(testServices: TestServices) : JvmBinaryArtifactHandler(testSe
|
|||||||
|
|
||||||
val command = listOfNotNull(
|
val command = listOfNotNull(
|
||||||
javaExe.absolutePath,
|
javaExe.absolutePath,
|
||||||
|
runIf(ATTACH_DEBUGGER in module.directives) { "-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005" },
|
||||||
"-ea",
|
"-ea",
|
||||||
runIf(ENABLE_JVM_PREVIEW in module.directives) { "--enable-preview" },
|
runIf(ENABLE_JVM_PREVIEW in module.directives) { "--enable-preview" },
|
||||||
"-classpath",
|
"-classpath",
|
||||||
|
|||||||
+13
@@ -151,4 +151,17 @@ object CodegenTestDirectives : SimpleDirectivesContainer() {
|
|||||||
structure of test
|
structure of test
|
||||||
""".trimIndent()
|
""".trimIndent()
|
||||||
)
|
)
|
||||||
|
|
||||||
|
val ATTACH_DEBUGGER by directive(
|
||||||
|
description = """
|
||||||
|
This directive can be used to attach debugger to instance of JVM which
|
||||||
|
is used to run `box` test in case it runs in separate JVM instance
|
||||||
|
(e.g. when this case should be ran on some modern JDK like JDK 17)
|
||||||
|
|
||||||
|
After running test run remote debugger on port 5005 (test will wait until
|
||||||
|
debugger won't be attached)
|
||||||
|
|
||||||
|
Please don't forget to remove this directive after debug session is over
|
||||||
|
""".trimIndent()
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user