Skip to content

Commit 677ddd7

Browse files
AYastrebovSpace Team
authored andcommitted
[Gradle] Add tests checking building swift export with new ios apis
^KT-81465
1 parent 2c0c34d commit 677ddd7

File tree

1 file changed

+44
-0
lines changed
  • libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native

1 file changed

+44
-0
lines changed

libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/SwiftExportIT.kt

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -523,4 +523,48 @@ class SwiftExportIT : KGPBaseTest() {
523523
}
524524
}
525525
}
526+
527+
@DisplayName("Test build with new iOS apis which are not available in the minimum deployment target")
528+
@GradleTest
529+
fun testNewApiAvailability(
530+
gradleVersion: GradleVersion,
531+
@TempDir testBuildDir: Path,
532+
) {
533+
project("empty", gradleVersion) {
534+
plugins {
535+
kotlin("multiplatform")
536+
}
537+
settingsBuildScriptInjection {
538+
settings.rootProject.name = "shared"
539+
}
540+
buildScriptInjection {
541+
project.applyMultiplatform {
542+
iosArm64()
543+
// UIContentUnavailableConfiguration is available only starting iOS sdk 17
544+
sourceSets.iosMain.get().compileSource(
545+
"""
546+
import platform.UIKit.UIContentUnavailableConfiguration
547+
fun demo(): UIContentUnavailableConfiguration = UIContentUnavailableConfiguration.emptyConfiguration()
548+
""".trimIndent()
549+
)
550+
}
551+
}
552+
553+
// Build with iOS sdk 14, it should fail
554+
buildAndFail(
555+
":embedSwiftExportForXcode",
556+
environmentVariables = swiftExportEmbedAndSignEnvVariables(testBuildDir, iphoneOsDeploymentTarget = "14.0")
557+
) {
558+
assertTasksFailed(":iosArm64DebugBuildSPMPackage")
559+
}
560+
561+
// Build with iOS sdk 17, it should succeed
562+
build(
563+
":embedSwiftExportForXcode",
564+
environmentVariables = swiftExportEmbedAndSignEnvVariables(testBuildDir, iphoneOsDeploymentTarget = "17.0")
565+
) {
566+
assertTasksExecuted(":iosArm64DebugBuildSPMPackage")
567+
}
568+
}
569+
}
526570
}

0 commit comments

Comments
 (0)