diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTest.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTest.kt index 486958bec73..c661ad9792c 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTest.kt @@ -195,12 +195,14 @@ open class KotlinNativeHostTest : KotlinNativeTest() { /** * A task running Kotlin/Native tests on a simulator (iOS/watchOS/tvOS). */ -// TODO: Support debugging. open class KotlinNativeSimulatorTest : KotlinNativeTest() { @Input @Option(option = "device", description = "Sets a simulated device used to execute tests.") lateinit var deviceId: String + @Internal + var debugMode = false + @get:Internal override val testCommand: TestCommand = object : TestCommand() { override val executable: String @@ -213,7 +215,15 @@ open class KotlinNativeSimulatorTest : KotlinNativeTest() { testNegativeGradleFilter: Set, userArgs: List ): List = - listOf("simctl", "spawn", "--standalone", deviceId, this@KotlinNativeSimulatorTest.executable.absolutePath, "--") + + listOfNotNull( + "simctl", + "spawn", + "--wait-for-debugger".takeIf { debugMode }, + "--standalone", + deviceId, + this@KotlinNativeSimulatorTest.executable.absolutePath, + "--" + ) + testArgs(testLogger, checkExitCode, testGradleFilter, testNegativeGradleFilter, userArgs) } } \ No newline at end of file