[Gradle] Transform only composite metadata artifacts
^KT-49933
This commit is contained in:
committed by
Space Team
parent
4210e13103
commit
fbbd1d737a
+65
@@ -221,6 +221,71 @@ class HierarchicalMppIT : KGPBaseTest() {
|
||||
}
|
||||
}
|
||||
|
||||
@GradleTest
|
||||
@DisplayName("Check that only composite metadata artifacts are transformed")
|
||||
fun testOnlyCompositeMetadataArtifactsTransformed(gradleVersion: GradleVersion, @TempDir tempDir: Path) {
|
||||
val buildOptions = defaultBuildOptions.copy(logLevel = LogLevel.DEBUG)
|
||||
publishThirdPartyLib(withGranularMetadata = true, gradleVersion = gradleVersion, localRepoDir = tempDir)
|
||||
|
||||
val regex = """artifact: '(.+)'""".toRegex()
|
||||
fun BuildResult.transformedArtifacts() = output
|
||||
.lineSequence()
|
||||
.filter { it.contains("Transform composite metadata") }
|
||||
.mapNotNull { regex.find(it)?.groups?.get(1)?.value }
|
||||
.map { File(it).name }
|
||||
.toSet()
|
||||
|
||||
nativeProject(
|
||||
"my-lib-foo".withPrefix,
|
||||
gradleVersion,
|
||||
localRepoDir = tempDir,
|
||||
buildOptions = buildOptions
|
||||
).run {
|
||||
build("publish") {
|
||||
assertEquals(
|
||||
setOf("third-party-lib-metadata-1.0.jar"),
|
||||
transformedArtifacts()
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
nativeProject(
|
||||
"my-lib-bar".withPrefix,
|
||||
gradleVersion,
|
||||
localRepoDir = tempDir,
|
||||
buildOptions = buildOptions
|
||||
).run {
|
||||
build("publish") {
|
||||
assertEquals(
|
||||
setOf(
|
||||
"my-lib-foo-metadata-1.0-all.jar",
|
||||
"third-party-lib-metadata-1.0.jar"
|
||||
),
|
||||
transformedArtifacts()
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
nativeProject(
|
||||
"my-app".withPrefix,
|
||||
gradleVersion,
|
||||
localRepoDir = tempDir,
|
||||
buildOptions = buildOptions
|
||||
).run {
|
||||
testDependencyTransformations {
|
||||
assertEquals(
|
||||
setOf(
|
||||
"my-lib-foo-metadata-1.0-all.jar",
|
||||
"my-lib-bar-metadata-1.0-all.jar",
|
||||
"third-party-lib-metadata-1.0.jar",
|
||||
"kotlin-test-js-${buildOptions.kotlinVersion}.jar"
|
||||
),
|
||||
transformedArtifacts()
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@GradleTest
|
||||
@DisplayName("Works with published JS library")
|
||||
fun testHmppWithPublishedJsBothDependency(gradleVersion: GradleVersion, @TempDir tempDir: Path) {
|
||||
|
||||
Reference in New Issue
Block a user