summaryrefslogtreecommitdiff
path: root/buildSrc/src/main/kotlin
diff options
context:
space:
mode:
Diffstat (limited to 'buildSrc/src/main/kotlin')
-rw-r--r--buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts34
1 files changed, 15 insertions, 19 deletions
diff --git a/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts b/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts
index 5afd3e0d..7ae42cd2 100644
--- a/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts
+++ b/buildSrc/src/main/kotlin/jacoco-aggregation.gradle.kts
@@ -22,7 +22,8 @@
plugins {
- jacoco
+ base
+ id("jacoco-report-aggregation")
}
repositories {
@@ -30,25 +31,20 @@ repositories {
mavenCentral()
}
-tasks.register<JacocoReport>("codeCoverageReport") {
- group = "Coverage reports"
- description = "Generates an aggregate report based on all subprojects"
-
- reports {
- xml.required.set(true)
- xml.outputLocation.set(file("${buildDir}/reports/jacoco/report.xml"))
-
- html.required.set(true)
- }
-
+dependencies {
subprojects {
- this@subprojects.plugins.withType<JacocoPlugin>().configureEach {
- this@subprojects.tasks.matching {
- it.extensions.findByType<JacocoTaskExtension>() != null }
- .configureEach {
- sourceSets(this@subprojects.the<SourceSetContainer>().named("main").get())
- executionData(this)
- }
+ plugins.withType<JacocoPlugin>().configureEach {
+ jacocoAggregation(this@subprojects)
}
+
}
}
+
+@Suppress("UnstableApiUsage")
+val codeCoverageReport by reporting.reports.creating(JacocoCoverageReport::class) {
+ testType.set(TestSuiteType.UNIT_TEST)
+}
+
+tasks.check {
+ dependsOn(codeCoverageReport.reportTask)
+}