From a8f2e9ced7ede2b20e12e1a3e9d3c7e1c1575a61 Mon Sep 17 00:00:00 2001 From: Pavel Punegov Date: Mon, 31 Jan 2022 14:16:35 +0300 Subject: [PATCH] [Gradle][test] Correct iOS simulator targets for both x64 and arm64 --- .../kotlin/gradle/native/GeneralNativeIT.kt | 36 ++++++++++--------- ..._wWarn.xml => TEST-TestKt-iOSArm64sim.xml} | 8 ++--- 2 files changed, 24 insertions(+), 20 deletions(-) rename libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/{TEST-TestKt-iOSsim_wWarn.xml => TEST-TestKt-iOSArm64sim.xml} (55%) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt index 8747e485d4f..7a530066b7e 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt @@ -17,7 +17,6 @@ import org.jetbrains.kotlin.gradle.internals.NO_NATIVE_STDLIB_PROPERTY_WARNING import org.jetbrains.kotlin.gradle.internals.NO_NATIVE_STDLIB_WARNING import org.jetbrains.kotlin.gradle.plugin.mpp.NativeOutputKind import org.jetbrains.kotlin.gradle.transformProjectWithPluginsDsl -import org.jetbrains.kotlin.gradle.util.isWindows import org.jetbrains.kotlin.gradle.util.modify import org.jetbrains.kotlin.gradle.util.runProcess import org.jetbrains.kotlin.konan.target.CompilerOutputKind @@ -596,11 +595,18 @@ class GeneralNativeIT : BaseGradleIT() { @Test fun testNativeTests() = with(transformNativeTestProject("native-tests")) { - val testTasks = listOf("hostTest", "iosTest") val hostTestTask = "hostTest" + val testTasks = listOf(hostTestTask, "iosTest", "iosArm64Test") - val suffix = if (isWindows) "exe" else "kexe" + val testsToExecute = mutableListOf(":$hostTestTask") + when (HostManager.host) { + KonanTarget.MACOS_X64 -> testsToExecute.add(":iosTest") + KonanTarget.MACOS_ARM64 -> testsToExecute.add(":iosArm64Test") + else -> {} + } + val testsToSkip = testTasks.map { ":$it" } - testsToExecute + val suffix = HostManager.host.family.exeSuffix val defaultOutputFile = "build/bin/host/debugTest/test.$suffix" val anotherOutputFile = "build/bin/host/anotherDebugTest/another.$suffix" @@ -620,14 +626,6 @@ class GeneralNativeIT : BaseGradleIT() { assertNoSuchFile(anotherOutputFile) } - val testsToExecute = mutableListOf(":$hostTestTask") - when (HostManager.host) { - KonanTarget.MACOS_X64 -> testsToExecute.add(":iosTest") - KonanTarget.MACOS_ARM64 -> testsToExecute.add(":iosArm64Test") - else -> { } - } - val testsToSkip = testTasks.map { ":$it" } - testsToExecute - // Store currently booted simulators to check that they don't leak (MacOS only). val bootedSimulatorsBefore = getBootedSimulators(projectDir) @@ -753,21 +751,27 @@ class GeneralNativeIT : BaseGradleIT() { expectedHostTestResult = "testProject/native-tests/TEST-TestKt.xml" expectedIOSTestResults = listOf( "testProject/native-tests/TEST-TestKt-iOSsim.xml", - "testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml", + "testProject/native-tests/TEST-TestKt-iOSArm64sim.xml", ) } assertTestResults(expectedHostTestResult, hostTestTask) // K/N doesn't report line numbers correctly on Linux (see KT-35408). - // TODO: Uncomment when this is fixed. - //assertStacktrace(hostTestTask, "host") + // TODO: Move assertStacktrace(hostTestTask, "host") out of if clause if (HostManager.hostIsMac) { + assertStacktrace(hostTestTask, "host") + val testTarget = when (HostManager.host) { + KonanTarget.MACOS_ARM64 -> "iosArm64" + KonanTarget.MACOS_X64 -> "ios" + else -> throw IllegalStateException("Unsupported host: ${HostManager.host}") + } + val testTask = "${testTarget}Test" assertTestResultsAnyOf( expectedIOSTestResults[0], expectedIOSTestResults[1], - "iosTest" + testTask ) - assertStacktrace("iosTest", "ios") + assertStacktrace(testTask, testTarget) } } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSArm64sim.xml similarity index 55% rename from libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml rename to libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSArm64sim.xml index b54d15b1a04..d2dca65bc82 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSArm64sim.xml @@ -2,10 +2,10 @@ - - - - + + + + ...