Skip to content

Commit 1a72da8

Browse files
committed
Use jacoco for kover, create Kover convention plugin
1 parent 33672e1 commit 1a72da8

20 files changed

Lines changed: 49 additions & 18 deletions

File tree

build-logic/convention/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ group = "io.github.composegears.valkyrie"
77
dependencies {
88
compileOnly(libs.kotlin.compose.compiler.plugin)
99
compileOnly(libs.kotlin.gradle.plugin)
10+
compileOnly(libs.kover.plugin)
1011
}
1112

1213
gradlePlugin {
@@ -23,5 +24,9 @@ gradlePlugin {
2324
id = "valkyrie.wasm.resources"
2425
implementationClass = "WasmResourcesPlugin"
2526
}
27+
register("valkyrie.kover") {
28+
id = "valkyrie.kover"
29+
implementationClass = "KoverPlugin"
30+
}
2631
}
2732
}

build-logic/convention/src/main/kotlin/ComposePlugin.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
import io.github.composegears.valkyrie.internal.composeCompiler
32
import io.github.composegears.valkyrie.internal.jetbrainsComposePluginId
43
import io.github.composegears.valkyrie.internal.kotlinComposePluginId
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import io.github.composegears.valkyrie.internal.kover
2+
import io.github.composegears.valkyrie.internal.koverPluginId
3+
import org.gradle.api.Plugin
4+
import org.gradle.api.Project
5+
import org.gradle.kotlin.dsl.apply
6+
7+
class KoverPlugin : Plugin<Project> {
8+
9+
override fun apply(target: Project) = with(target) {
10+
apply(plugin = koverPluginId)
11+
12+
kover {
13+
useJacoco(libs.versions.jacoco.get())
14+
}
15+
}
16+
}

build-logic/convention/src/main/kotlin/io/github/composegears/valkyrie/internal/Plugins.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,6 @@ internal val Project.jetbrainsComposePluginId
1111

1212
internal val Project.kotlinComposePluginId
1313
get() = libs.plugins.kotlin.compose.get().pluginId
14+
15+
internal val Project.koverPluginId
16+
get() = libs.plugins.kover.get().pluginId
Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
package io.github.composegears.valkyrie.internal
22

3+
import kotlinx.kover.gradle.plugin.dsl.KoverProjectExtension
34
import org.gradle.api.Project
45
import org.gradle.kotlin.dsl.configure
5-
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
66
import org.jetbrains.kotlin.compose.compiler.gradle.ComposeCompilerGradlePluginExtension
7+
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
78

89
internal fun Project.kmpExtension(action: KotlinMultiplatformExtension.() -> Unit) =
910
extensions.configure<KotlinMultiplatformExtension>(action)
1011

11-
fun Project.composeCompiler(block: ComposeCompilerGradlePluginExtension.() -> Unit) =
12+
internal fun Project.composeCompiler(block: ComposeCompilerGradlePluginExtension.() -> Unit) =
1213
extensions.configure<ComposeCompilerGradlePluginExtension>(block)
14+
15+
internal fun Project.kover(action: KoverProjectExtension.() -> Unit) =
16+
extensions.configure<KoverProjectExtension>(action)

components/generator/core/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
alias(libs.plugins.valkyrie.kmp)
3-
alias(libs.plugins.kover)
3+
alias(libs.plugins.valkyrie.kover)
44
}
55

66
kotlin {

components/generator/iconpack/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
plugins {
22
alias(libs.plugins.valkyrie.kmp)
33
alias(libs.plugins.valkyrie.wasm.resources)
4-
alias(libs.plugins.kover)
4+
alias(libs.plugins.valkyrie.kover)
55
}
66

77
kotlin {

components/generator/jvm/imagevector/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
alias(libs.plugins.kotlin.jvm)
3-
alias(libs.plugins.kover)
3+
alias(libs.plugins.valkyrie.kover)
44
}
55

66
sourceSets {

components/generator/jvm/poet-extensions/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
alias(libs.plugins.kotlin.jvm)
3-
alias(libs.plugins.kover)
3+
alias(libs.plugins.valkyrie.kover)
44
}
55

66
dependencies {

components/ir/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
alias(libs.plugins.valkyrie.kmp)
3-
alias(libs.plugins.kover)
3+
alias(libs.plugins.valkyrie.kover)
44
}
55

66
kotlin {

0 commit comments

Comments
 (0)