[Gradle] Test kotlinNativeFrameworkNameAttribute on fat frameworks
^KT-58316 Verification Pending
This commit is contained in:
committed by
Space Team
parent
7c5d1b4030
commit
a1eff2cd85
+9
@@ -574,6 +574,15 @@ class ConfigurationsTest : MultiplatformExtensionTest() {
|
|||||||
binaries.framework("main", listOf(NativeBuildType.DEBUG))
|
binaries.framework("main", listOf(NativeBuildType.DEBUG))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
iosX64 {
|
||||||
|
binaries.framework("foo", listOf(NativeBuildType.DEBUG)) { baseName = "foo" }
|
||||||
|
binaries.framework("bar", listOf(NativeBuildType.DEBUG)) { baseName = "bar" }
|
||||||
|
}
|
||||||
|
iosArm64 {
|
||||||
|
binaries.framework("foo", listOf(NativeBuildType.DEBUG)) { baseName = "foo" }
|
||||||
|
binaries.framework("bar", listOf(NativeBuildType.DEBUG)) { baseName = "bar" }
|
||||||
|
}
|
||||||
|
|
||||||
linuxX64("linuxA") { attributes { attribute(distinguishingAttribute, "linuxA") } }
|
linuxX64("linuxA") { attributes { attribute(distinguishingAttribute, "linuxA") } }
|
||||||
linuxX64("linuxB") { attributes { attribute(distinguishingAttribute, "linuxB") } }
|
linuxX64("linuxB") { attributes { attribute(distinguishingAttribute, "linuxB") } }
|
||||||
|
|
||||||
|
|||||||
+26
-3
@@ -6,7 +6,9 @@
|
|||||||
package org.jetbrains.kotlin.gradle.unitTests
|
package org.jetbrains.kotlin.gradle.unitTests
|
||||||
|
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
|
import org.gradle.api.artifacts.Configuration
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
|
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget
|
||||||
import org.jetbrains.kotlin.gradle.util.buildProjectWithMPP
|
import org.jetbrains.kotlin.gradle.util.buildProjectWithMPP
|
||||||
import org.jetbrains.kotlin.gradle.util.kotlin
|
import org.jetbrains.kotlin.gradle.util.kotlin
|
||||||
import kotlin.test.*
|
import kotlin.test.*
|
||||||
@@ -21,7 +23,6 @@ class FatFrameworksTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
project.evaluate()
|
project.evaluate()
|
||||||
project.configurations.names.also(::println)
|
|
||||||
project.assertConfigurationExists("fooDebugFrameworkIosX64")
|
project.assertConfigurationExists("fooDebugFrameworkIosX64")
|
||||||
project.assertConfigurationExists("fooDebugFrameworkIosArm64")
|
project.assertConfigurationExists("fooDebugFrameworkIosArm64")
|
||||||
project.assertConfigurationExists("fooDebugFrameworkIosFat")
|
project.assertConfigurationExists("fooDebugFrameworkIosFat")
|
||||||
@@ -77,6 +78,28 @@ class FatFrameworksTest {
|
|||||||
iosArm64 { binaries.framework("foo", listOf(DEBUG, RELEASE)) }
|
iosArm64 { binaries.framework("foo", listOf(DEBUG, RELEASE)) }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `fat framework contains framework name attribute`() {
|
||||||
|
val project = buildProjectWithMPP {
|
||||||
|
kotlin {
|
||||||
|
iosX64 {
|
||||||
|
binaries.framework("foo", listOf(DEBUG)) { baseName = "f1" }
|
||||||
|
binaries.framework("bar", listOf(DEBUG)) { baseName = "f2" }
|
||||||
|
}
|
||||||
|
|
||||||
|
iosArm64 {
|
||||||
|
binaries.framework("foo", listOf(DEBUG)) { baseName = "f1" }
|
||||||
|
binaries.framework("bar", listOf(DEBUG)) { baseName = "f2" }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
project.evaluate()
|
||||||
|
val barFat = project.assertConfigurationExists("barDebugFrameworkIosFat")
|
||||||
|
val fooFat = project.assertConfigurationExists("fooDebugFrameworkIosFat")
|
||||||
|
assertEquals("f1", fooFat.attributes.getAttribute(KotlinNativeTarget.kotlinNativeFrameworkNameAttribute))
|
||||||
|
assertEquals("f2", barFat.attributes.getAttribute(KotlinNativeTarget.kotlinNativeFrameworkNameAttribute))
|
||||||
|
}
|
||||||
|
|
||||||
private fun testFatFrameworkGrouping(
|
private fun testFatFrameworkGrouping(
|
||||||
vararg allExpectedFatFrameworks: String,
|
vararg allExpectedFatFrameworks: String,
|
||||||
configureTargets: KotlinMultiplatformExtension.() -> Unit,
|
configureTargets: KotlinMultiplatformExtension.() -> Unit,
|
||||||
@@ -96,7 +119,7 @@ class FatFrameworksTest {
|
|||||||
if (configuration != null) fail("'$name' configuration was not expected")
|
if (configuration != null) fail("'$name' configuration was not expected")
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun Project.assertConfigurationExists(name: String) {
|
private fun Project.assertConfigurationExists(name: String): Configuration {
|
||||||
project.configurations.findByName(name) ?: fail("'$name' configuration was expected to be created")
|
return project.configurations.findByName(name) ?: fail("'$name' configuration was expected to be created")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user