From d3d21f072a0916a33340811168097d88fe9c0ca8 Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Tue, 9 Nov 2021 17:40:47 +0500 Subject: [PATCH] [K/N][gradle] Added a test for KT-49248 --- .../kotlin/gradle/native/GeneralNativeIT.kt | 21 ++++++++++++------- .../native-tests/TEST-TestKt-iOSsim.xml | 5 +++-- .../TEST-TestKt-iOSsim_pre6.6.xml | 4 +++- .../native-tests/TEST-TestKt-iOSsim_wWarn.xml | 18 ++++++++++++++++ .../testProject/native-tests/TEST-TestKt.xml | 6 ++++-- .../native-tests/TEST-TestKt_pre6.6.xml | 4 +++- .../src/commonMain/kotlin/main.kt | 6 +++++- .../src/commonTest/kotlin/test.kt | 5 +++++ 8 files changed, 54 insertions(+), 15 deletions(-) create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml 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 ec9aae2f727..dd4cb868468 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 @@ -718,7 +718,7 @@ class GeneralNativeIT : BaseGradleIT() { .single { it.getAttribute("name").value == "fail" || it.getAttribute("name").value == "fail[$targetName]" } .getChild("failure") .text - assertTrue(stacktrace.contains("""at org\.foo\.test#fail\(.*test\.kt:24\)""".toRegex())) + assertTrue(stacktrace.contains("""at org\.foo\.test#fail\(.*test\.kt:29\)""".toRegex())) } fun assertTestResultsAnyOf( @@ -737,25 +737,30 @@ class GeneralNativeIT : BaseGradleIT() { // If, in the test project, preset name was updated, // update accordingly test result output for Gradle6.6+ val testGradleVersion = project.chooseWrapperVersionOrFinishTest() - val expectedTestResults = if (GradleVersion.version(testGradleVersion) < GradleVersion.version("6.6")) { - listOf( + val expectedHostTestResult: String + val expectedIOSTestResults: List + if (GradleVersion.version(testGradleVersion) < GradleVersion.version("6.6")) { + expectedHostTestResult = "testProject/native-tests/TEST-TestKt_pre6.6.xml" + expectedIOSTestResults = listOf( "testProject/native-tests/TEST-TestKt_pre6.6.xml", "testProject/native-tests/TEST-TestKt-iOSsim_pre6.6.xml", ) } else { - listOf( - "testProject/native-tests/TEST-TestKt.xml", + expectedHostTestResult = "testProject/native-tests/TEST-TestKt.xml" + expectedIOSTestResults = listOf( "testProject/native-tests/TEST-TestKt-iOSsim.xml", + "testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml", ) } - assertTestResults(expectedTestResults.first(), hostTestTask) + + 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") if (HostManager.hostIsMac) { assertTestResultsAnyOf( - expectedTestResults[0], - expectedTestResults[1], + expectedIOSTestResults[0], + expectedIOSTestResults[1], "iosTest" ) assertStacktrace("iosTest", "ios") diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim.xml b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim.xml index 37be5b49672..b54d15b1a04 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim.xml +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim.xml @@ -1,15 +1,16 @@ - + + ... diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_pre6.6.xml b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_pre6.6.xml index 22d18a0d4dd..5c971ac8664 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_pre6.6.xml +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_pre6.6.xml @@ -1,14 +1,16 @@ - + + ... 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-iOSsim_wWarn.xml new file mode 100644 index 00000000000..f47c5c5ceb4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt-iOSsim_wWarn.xml @@ -0,0 +1,18 @@ + + + + + + + + + ... + + + + + \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt.xml b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt.xml index e3f25180468..c280b3a3a97 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt.xml +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt.xml @@ -1,14 +1,16 @@ - + + ... +Bar call +42]]> \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt_pre6.6.xml b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt_pre6.6.xml index 41626ade0ba..98265be7fef 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt_pre6.6.xml +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/TEST-TestKt_pre6.6.xml @@ -4,11 +4,13 @@ + ... +Bar call +42]]> \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonMain/kotlin/main.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonMain/kotlin/main.kt index c41142e4e55..fe245c39521 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonMain/kotlin/main.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonMain/kotlin/main.kt @@ -7,4 +7,8 @@ package org.foo fun foo() = "Foo call" -internal fun bar() = "Bar call" \ No newline at end of file +internal fun bar() = "Bar call" + +open class Foo { + internal fun foo() = 42 +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonTest/kotlin/test.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonTest/kotlin/test.kt index 1c41881f6c2..d3bdbd2d3af 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonTest/kotlin/test.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-tests/src/commonTest/kotlin/test.kt @@ -18,4 +18,9 @@ fun barTest() { println(bar()) } +class Bar : Foo() +@Test +fun barfooTest() { + println(Bar().foo()) +}