[#781] Kover 0.7.0-alpha

* [#781] Kover 0.7.0-alpha

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
This commit is contained in:
Carter Jernigan 2023-03-09 06:32:31 -05:00 committed by GitHub
parent 8e17d07ced
commit f18e224404
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 101 additions and 41 deletions

View File

@ -230,7 +230,7 @@ jobs:
timeout-minutes: 4
run: |
# Note that we explicitly check just the Kotlin modules, to avoid compiling the Android modules here
./gradlew :crash-lib:check :preference-api-lib:check :spackle-lib:check
./gradlew :configuration-api-lib:check :crash-lib:check :preference-api-lib:check :spackle-lib:check
- name: Collect Artifacts
if: ${{ always() }}
timeout-minutes: 1
@ -240,7 +240,7 @@ jobs:
mkdir ${ARTIFACTS_DIR_PATH}
zip -r ${RESULTS_ZIP_PATH} . -i \*build/reports/\*
zip -r ${RESULTS_ZIP_PATH} . -i \*build/reports/\* \*/build/kover/html/\* \*/build/kover/xml/report.xml
- name: Upload Artifacts
if: ${{ always() }}
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce

View File

@ -47,6 +47,7 @@ dependencies {
exclude(group = "org.jetbrains.kotlin", module = "kotlin-build-common")
}
implementation("wtf.emulator:gradle-plugin:${rootProperties.getProperty("EMULATOR_WTF_GRADLE_PLUGIN_VERSION")}")
implementation("org.jetbrains.kotlinx.kover:org.jetbrains.kotlinx.kover.gradle.plugin:${rootProperties.getProperty("KOVER_VERSION")}")
}
// A slightly gross way to use the root gradle.properties as the single source of truth for version numbers

View File

@ -149,11 +149,13 @@ org.jetbrains.kotlin:kotlin-tooling-core:1.8.10=compileClasspath,runtimeClasspat
org.jetbrains.kotlin:kotlin-util-io:1.7.10=kotlinCompilerPluginClasspathMain
org.jetbrains.kotlin:kotlin-util-io:1.8.10=compileClasspath,runtimeClasspath
org.jetbrains.kotlin:kotlin-util-klib:1.8.10=runtimeClasspath
org.jetbrains.kotlinx.kover:org.jetbrains.kotlinx.kover.gradle.plugin:0.7.0-Alpha=compileClasspath,runtimeClasspath
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.0=runtimeClasspath
org.jetbrains.kotlinx:kotlinx-serialization-core-jvm:1.1.0=runtimeClasspath
org.jetbrains.kotlinx:kotlinx-serialization-core:1.1.0=runtimeClasspath
org.jetbrains.kotlinx:kotlinx-serialization-json-jvm:1.1.0=runtimeClasspath
org.jetbrains.kotlinx:kotlinx-serialization-json:1.1.0=runtimeClasspath
org.jetbrains.kotlinx:kover-gradle-plugin:0.7.0-Alpha=compileClasspath,runtimeClasspath
org.jetbrains:annotations:13.0=compileClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,runtimeClasspath
org.json:json:20180813=runtimeClasspath
org.jvnet.staxex:stax-ex:1.8.1=runtimeClasspath

View File

@ -0,0 +1,16 @@
pluginManager.withPlugin("org.jetbrains.kotlinx.kover") {
extensions.findByType<kotlinx.kover.gradle.plugin.dsl.KoverProjectExtension>()?.apply {
disabledForProject = !project.property("IS_KOTLIN_TEST_COVERAGE_ENABLED").toString().toBoolean()
}
extensions.findByType<kotlinx.kover.gradle.plugin.dsl.KoverReportExtension>()?.apply {
html {
onCheck = true
setReportDir(layout.buildDirectory.dir("kover/html"))
}
xml {
onCheck = true
setReportFile(layout.buildDirectory.file("kover/xml/report.xml"))
}
}
}

View File

@ -1,5 +1,3 @@
import kotlinx.kover.api.KoverMergedConfig
buildscript {
dependencyLocking {
// This property is treated specially, as it is not defined by default in the root gradle.properties
@ -59,7 +57,6 @@ buildscript {
plugins {
id("com.github.ben-manes.versions")
id("com.osacky.fulladle")
id("org.jetbrains.kotlinx.kover")
id("secant.detekt-conventions")
id("secant.ktlint-conventions")
id("secant.rosetta-conventions")
@ -195,32 +192,3 @@ fladle {
"/sdcard/googletest/test_outputfiles"
))
}
kover {
isDisabled.set(!project.property("IS_KOTLIN_TEST_COVERAGE_ENABLED").toString().toBoolean())
engine.set(kotlinx.kover.api.JacocoEngine(project.property("JACOCO_VERSION").toString()))
// Don't run on the Android projects, as they have coverage generated in a different way
// through Android's instrumented tests
extensions.configure<KoverMergedConfig> {
enable()
filters {
projects {
excludes.addAll(setOf(
"app",
"crash-android-lib",
"preference-impl-android-lib",
"sdk-ext-lib",
"sdk-ext-ui-lib",
"spackle-android-lib",
"test-lib",
"ui-benchmark-test",
"ui-design-lib",
"ui-integration-test",
"ui-lib",
"ui-screenshot-test"
))
}
}
}
}

View File

@ -148,13 +148,13 @@ org.jetbrains.kotlin:kotlin-stdlib:1.7.10=classpath
org.jetbrains.kotlin:kotlin-tooling-core:1.8.10=classpath
org.jetbrains.kotlin:kotlin-util-io:1.8.10=classpath
org.jetbrains.kotlin:kotlin-util-klib:1.8.10=classpath
org.jetbrains.kotlinx.kover:org.jetbrains.kotlinx.kover.gradle.plugin:0.6.1=classpath
org.jetbrains.kotlinx.kover:org.jetbrains.kotlinx.kover.gradle.plugin:0.7.0-Alpha=classpath
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-core-jvm:1.1.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-core:1.1.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-json-jvm:1.1.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-json:1.1.0=classpath
org.jetbrains.kotlinx:kover:0.6.1=classpath
org.jetbrains.kotlinx:kover-gradle-plugin:0.7.0-Alpha=classpath
org.jetbrains:annotations:13.0=classpath
org.json:json:20180813=classpath
org.jvnet.staxex:stax-ex:1.8.1=classpath

View File

@ -2,6 +2,9 @@ plugins {
kotlin("multiplatform")
id("secant.kotlin-multiplatform-build-conventions")
id("secant.dependency-conventions")
id("org.jetbrains.kotlinx.kover")
id("secant.kover-conventions")
}
kotlin {

View File

@ -0,0 +1,43 @@
# This is a Gradle generated file for dependency locking.
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
junit:junit:4.13.2=jvmTestCompileClasspath,jvmTestRuntimeClasspath
net.java.dev.jna:jna:5.6.0=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.freemarker:freemarker:2.3.30=koverJvmReporter
org.hamcrest:hamcrest-core:1.3=jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.intellij.deps:coverage-report:1.0.18=koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-agent:1.0.709=koverJvmAgent,koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-reporter:1.0.709=koverJvmReporter
org.jetbrains.intellij.deps:trove4j:1.0.20200330=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.8.10=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.8.10=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:1.8.10=kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-reflect:1.6.10=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-script-runtime:1.8.10=kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-scripting-common:1.8.10=kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.8.10=kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.8.10=kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain
org.jetbrains.kotlin:kotlin-scripting-jvm:1.8.10=kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain
org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,commonMainApiDependenciesMetadata,commonTestApiDependenciesMetadata,commonTestImplementationDependenciesMetadata,kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10=jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10=jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib:1.8.10=jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-test-annotations-common:1.8.10=commonTestImplementationDependenciesMetadata
org.jetbrains.kotlin:kotlin-test-common:1.8.10=commonTestImplementationDependenciesMetadata
org.jetbrains.kotlin:kotlin-test-junit:1.8.10=jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlin:kotlin-test:1.8.10=commonTestImplementationDependenciesMetadata,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:atomicfu:0.17.3=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains.kotlinx:kotlinx-collections-immutable-jvm:0.3.5=jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:kotlinx-collections-immutable:0.3.5=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,commonMainApiDependenciesMetadata,commonTestApiDependenciesMetadata,jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4=jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4=jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,commonMainApiDependenciesMetadata,commonTestApiDependenciesMetadata,jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains.kotlinx:kotlinx-coroutines-test-jvm:1.6.4=jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4=commonTestApiDependenciesMetadata,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:kotlinx-datetime-jvm:0.4.0=jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.kotlinx:kotlinx-datetime:0.4.0=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,commonMainApiDependenciesMetadata,commonTestApiDependenciesMetadata,jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains.kotlinx:kotlinx-serialization-core:1.3.2=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains:annotations:13.0=jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath
org.jetbrains:annotations:16.0.2=koverJvmReporter
org.json:json:20210307=koverJvmReporter
empty=archives,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationDependenciesMetadata,commonMainIntransitiveDependenciesMetadata,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestRuntimeOnlyDependenciesMetadata,default,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainRuntimeOnlyDependenciesMetadata,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinNativeCompilerPluginClasspath,kotlinScriptDef,kotlinScriptDefExtensions,koverAggregatedSetup,testKotlinScriptDef,testKotlinScriptDefExtensions

View File

@ -2,6 +2,9 @@ plugins {
kotlin("multiplatform")
id("secant.kotlin-multiplatform-build-conventions")
id("secant.dependency-conventions")
id("org.jetbrains.kotlinx.kover")
id("secant.kover-conventions")
}
kotlin {

View File

@ -3,7 +3,11 @@
# This file is expected to be part of source control.
junit:junit:4.13.2=commonTestImplementationCopy,jvmTestCompileClasspath,jvmTestRuntimeClasspath
net.java.dev.jna:jna:5.6.0=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.freemarker:freemarker:2.3.30=koverJvmReporter
org.hamcrest:hamcrest-core:1.3=commonTestImplementationCopy,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.intellij.deps:coverage-report:1.0.18=koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-agent:1.0.709=koverJvmAgent,koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-reporter:1.0.709=koverJvmReporter
org.jetbrains.intellij.deps:trove4j:1.0.20200330=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.6.20=kotlinCompilerClasspathCopy
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.8.10=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
@ -58,4 +62,6 @@ org.jetbrains.kotlinx:kotlinx-datetime:0.3.3=commonMainApiCopy2,jvmTestCompileCl
org.jetbrains.kotlinx:kotlinx-datetime:0.4.0=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,commonMainApiDependenciesMetadata,commonTestApiDependenciesMetadata,jvmCompileClasspath,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestRuntimeClasspath,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains.kotlinx:kotlinx-serialization-core:1.3.2=allSourceSetsCompileDependenciesMetadata,allSourceSetsRuntimeDependenciesMetadata,metadataCommonMainCompileClasspath,metadataCompileClasspath
org.jetbrains:annotations:13.0=commonTestImplementationCopy,jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath
empty=archives,archivesCopy,commonMainCompileOnlyCopy,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationCopy,commonMainIntransitiveDependenciesMetadata,commonMainIntransitiveDependenciesMetadataCopy,commonMainRuntimeOnlyCopy,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyCopy,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestIntransitiveDependenciesMetadataCopy,commonTestRuntimeOnlyCopy,commonTestRuntimeOnlyDependenciesMetadata,default,defaultCopy,jvmCompileOnlyCopy,jvmMainApiCopy,jvmMainCompileOnlyCopy,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationCopy,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainIntransitiveDependenciesMetadataCopy,jvmMainRuntimeOnlyCopy,jvmMainRuntimeOnlyDependenciesMetadata,jvmRuntimeOnlyCopy,jvmSourceArtifactsCopy,jvmTestApiCopy,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyCopy,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestIntransitiveDependenciesMetadataCopy,jvmTestRuntimeOnlyCopy,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinCompilerPluginClasspathCopy,kotlinNativeCompilerPluginClasspath,kotlinNativeCompilerPluginClasspathCopy,kotlinScriptDef,kotlinScriptDefCopy,kotlinScriptDefExtensions,kotlinScriptDefExtensionsCopy,metadataCommonMainCompileOnlyCopy,metadataCompileOnlyCopy,testKotlinScriptDef,testKotlinScriptDefCopy,testKotlinScriptDefExtensions,testKotlinScriptDefExtensionsCopy
org.jetbrains:annotations:16.0.2=koverJvmReporter
org.json:json:20210307=koverJvmReporter
empty=archives,archivesCopy,commonMainCompileOnlyCopy,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationCopy,commonMainIntransitiveDependenciesMetadata,commonMainIntransitiveDependenciesMetadataCopy,commonMainRuntimeOnlyCopy,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyCopy,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestIntransitiveDependenciesMetadataCopy,commonTestRuntimeOnlyCopy,commonTestRuntimeOnlyDependenciesMetadata,default,defaultCopy,jvmCompileOnlyCopy,jvmMainApiCopy,jvmMainCompileOnlyCopy,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationCopy,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainIntransitiveDependenciesMetadataCopy,jvmMainRuntimeOnlyCopy,jvmMainRuntimeOnlyDependenciesMetadata,jvmRuntimeOnlyCopy,jvmSourceArtifactsCopy,jvmTestApiCopy,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyCopy,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestIntransitiveDependenciesMetadataCopy,jvmTestRuntimeOnlyCopy,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinCompilerPluginClasspathCopy,kotlinNativeCompilerPluginClasspath,kotlinNativeCompilerPluginClasspathCopy,kotlinScriptDef,kotlinScriptDefCopy,kotlinScriptDefExtensions,kotlinScriptDefExtensionsCopy,koverAggregatedSetup,metadataCommonMainCompileOnlyCopy,metadataCompileOnlyCopy,testKotlinScriptDef,testKotlinScriptDefCopy,testKotlinScriptDefExtensions,testKotlinScriptDefExtensionsCopy

View File

@ -29,7 +29,7 @@ When coverage is enabled, running instrumentation tests will automatically gener
### Generating code coverage locally
- `./gradlew <android-module-name>:connectedCheck -PIS_ANDROID_INSTRUMENTATION_TEST_COVERAGE_ENABLED=true` for Android modules. These modules internally use JaCoCo to generate test coverage.
- `./gradlew <kotlin-only-module-name>:check` for Kotlin modules. These modules internally use Kover to generate test coverage.
- `./gradlew <kotlin-only-module-name>:check` for Kotlin modules. These modules internally use Kover to generate test coverage. You can then find the coverage report in `<kotlin-only-module-name>/build/kover/html/index.html`.
### Generating code coverage with emulator.wtf
1. `./gradlew <module-name>:testDebugWithEmulatorWtf -PIS_ANDROID_INSTRUMENTATION_TEST_COVERAGE_ENABLED=true`

View File

@ -146,7 +146,7 @@ KOTLIN_VERSION=1.8.10
KOTLINX_COROUTINES_VERSION=1.6.4
KOTLINX_DATETIME_VERSION=0.4.0
KOTLINX_IMMUTABLE_COLLECTIONS_VERSION=0.3.5
KOVER_VERSION=0.6.1
KOVER_VERSION=0.7.0-Alpha
PLAY_APP_UPDATE_VERSION=2.0.1
PLAY_APP_UPDATE_KTX_VERSION=2.0.1
ZCASH_ANDROID_WALLET_PLUGINS_VERSION=1.0.0

View File

@ -2,6 +2,9 @@ plugins {
kotlin("multiplatform")
id("secant.kotlin-multiplatform-build-conventions")
id("secant.dependency-conventions")
id("org.jetbrains.kotlinx.kover")
id("secant.kover-conventions")
}
kotlin {

View File

@ -3,7 +3,11 @@
# This file is expected to be part of source control.
junit:junit:4.13.2=jvmTestCompileClasspath,jvmTestRuntimeClasspath
net.java.dev.jna:jna:5.6.0=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.freemarker:freemarker:2.3.30=koverJvmReporter
org.hamcrest:hamcrest-core:1.3=jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains.intellij.deps:coverage-report:1.0.18=koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-agent:1.0.709=koverJvmAgent,koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-reporter:1.0.709=koverJvmReporter
org.jetbrains.intellij.deps:trove4j:1.0.20200330=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.6.20=kotlinCompilerClasspathCopy
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.8.10=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
@ -45,4 +49,6 @@ org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.1=commonTestImplementationCopy
org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.2=commonTestImplementationCopy2
org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4=commonTestImplementationDependenciesMetadata,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains:annotations:13.0=jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath
empty=allSourceSetsCompileDependenciesMetadataCopy,allSourceSetsRuntimeDependenciesMetadataCopy,archives,archivesCopy,commonMainApiDependenciesMetadataCopy,commonMainCompileOnlyCopy,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationCopy,commonMainImplementationDependenciesMetadata,commonMainIntransitiveDependenciesMetadata,commonMainIntransitiveDependenciesMetadataCopy,commonMainRuntimeOnlyCopy,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyCopy,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestIntransitiveDependenciesMetadataCopy,commonTestRuntimeOnlyCopy,commonTestRuntimeOnlyDependenciesMetadata,default,defaultCopy,jvmCompileOnlyCopy,jvmMainApiCopy,jvmMainCompileOnlyCopy,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationCopy,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainIntransitiveDependenciesMetadataCopy,jvmMainRuntimeOnlyCopy,jvmMainRuntimeOnlyDependenciesMetadata,jvmRuntimeOnlyCopy,jvmSourceArtifactsCopy,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyCopy,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestIntransitiveDependenciesMetadataCopy,jvmTestRuntimeOnlyCopy,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinCompilerPluginClasspathCopy,kotlinNativeCompilerPluginClasspath,kotlinNativeCompilerPluginClasspathCopy,kotlinScriptDef,kotlinScriptDefCopy,kotlinScriptDefExtensions,kotlinScriptDefExtensionsCopy,metadataCommonMainCompileOnlyCopy,metadataCompileOnlyCopy,testKotlinScriptDef,testKotlinScriptDefCopy,testKotlinScriptDefExtensions,testKotlinScriptDefExtensionsCopy
org.jetbrains:annotations:16.0.2=koverJvmReporter
org.json:json:20210307=koverJvmReporter
empty=allSourceSetsCompileDependenciesMetadataCopy,allSourceSetsRuntimeDependenciesMetadataCopy,archives,archivesCopy,commonMainApiDependenciesMetadataCopy,commonMainCompileOnlyCopy,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationCopy,commonMainImplementationDependenciesMetadata,commonMainIntransitiveDependenciesMetadata,commonMainIntransitiveDependenciesMetadataCopy,commonMainRuntimeOnlyCopy,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyCopy,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestIntransitiveDependenciesMetadataCopy,commonTestRuntimeOnlyCopy,commonTestRuntimeOnlyDependenciesMetadata,default,defaultCopy,jvmCompileOnlyCopy,jvmMainApiCopy,jvmMainCompileOnlyCopy,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationCopy,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainIntransitiveDependenciesMetadataCopy,jvmMainRuntimeOnlyCopy,jvmMainRuntimeOnlyDependenciesMetadata,jvmRuntimeOnlyCopy,jvmSourceArtifactsCopy,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyCopy,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestIntransitiveDependenciesMetadataCopy,jvmTestRuntimeOnlyCopy,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinCompilerPluginClasspathCopy,kotlinNativeCompilerPluginClasspath,kotlinNativeCompilerPluginClasspathCopy,kotlinScriptDef,kotlinScriptDefCopy,kotlinScriptDefExtensions,kotlinScriptDefExtensionsCopy,koverAggregatedSetup,metadataCommonMainCompileOnlyCopy,metadataCompileOnlyCopy,testKotlinScriptDef,testKotlinScriptDefCopy,testKotlinScriptDefExtensions,testKotlinScriptDefExtensionsCopy

View File

@ -2,6 +2,9 @@ plugins {
kotlin("multiplatform")
id("secant.kotlin-multiplatform-build-conventions")
id("secant.dependency-conventions")
id("org.jetbrains.kotlinx.kover")
id("secant.kover-conventions")
}
kotlin {

View File

@ -3,7 +3,11 @@
# This file is expected to be part of source control.
junit:junit:4.13.2=commonTestImplementationCopy,jvmTestCompileClasspath,jvmTestImplementationCopy,jvmTestRuntimeClasspath
net.java.dev.jna:jna:5.6.0=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.freemarker:freemarker:2.3.30=koverJvmReporter
org.hamcrest:hamcrest-core:1.3=commonTestImplementationCopy,jvmTestCompileClasspath,jvmTestImplementationCopy,jvmTestRuntimeClasspath
org.jetbrains.intellij.deps:coverage-report:1.0.18=koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-agent:1.0.709=koverJvmAgent,koverJvmReporter
org.jetbrains.intellij.deps:intellij-coverage-reporter:1.0.709=koverJvmReporter
org.jetbrains.intellij.deps:trove4j:1.0.20200330=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.6.20=kotlinCompilerClasspathCopy
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.8.10=kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
@ -50,4 +54,6 @@ org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.1=commonTestImplementationCopy
org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.2=commonTestImplementationCopy2
org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4=commonTestImplementationDependenciesMetadata,jvmTestCompileClasspath,jvmTestRuntimeClasspath
org.jetbrains:annotations:13.0=commonTestImplementationCopy,jvmCompileClasspath,jvmMainApiDependenciesMetadata,jvmRuntimeClasspath,jvmTestCompileClasspath,jvmTestImplementationCopy,jvmTestImplementationDependenciesMetadata,jvmTestRuntimeClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathJvmMain,kotlinCompilerPluginClasspathJvmTest,kotlinCompilerPluginClasspathMetadataCommonMain,kotlinCompilerPluginClasspathMetadataMain,kotlinKlibCommonizerClasspath
empty=allSourceSetsCompileDependenciesMetadataCopy,allSourceSetsRuntimeDependenciesMetadataCopy,archives,archivesCopy,commonMainCompileOnlyCopy,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationCopy,commonMainImplementationDependenciesMetadata,commonMainIntransitiveDependenciesMetadata,commonMainIntransitiveDependenciesMetadataCopy,commonMainRuntimeOnlyCopy,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyCopy,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestIntransitiveDependenciesMetadataCopy,commonTestRuntimeOnlyCopy,commonTestRuntimeOnlyDependenciesMetadata,compileClasspathCopy,default,defaultCopy,jvmApiCopy,jvmApiElementsCopy,jvmCompileClasspathCopy,jvmCompileOnlyCopy,jvmImplementationCopy,jvmMainCompileOnlyCopy,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationCopy,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainIntransitiveDependenciesMetadataCopy,jvmMainRuntimeOnlyCopy,jvmMainRuntimeOnlyDependenciesMetadata,jvmRuntimeClasspathCopy,jvmRuntimeElementsCopy,jvmRuntimeOnlyCopy,jvmSourceArtifactsCopy,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyCopy,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestIntransitiveDependenciesMetadataCopy,jvmTestRuntimeOnlyCopy,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinCompilerPluginClasspathCopy,kotlinNativeCompilerPluginClasspath,kotlinNativeCompilerPluginClasspathCopy,kotlinScriptDef,kotlinScriptDefCopy,kotlinScriptDefExtensions,kotlinScriptDefExtensionsCopy,metadataApiCopy,metadataApiElementsCopy,metadataCommonMainApiCopy,metadataCommonMainCompileClasspathCopy,metadataCommonMainCompileOnlyCopy,metadataCommonMainImplementationCopy,metadataCompileClasspathCopy,metadataCompileOnlyCopy,metadataImplementationCopy,testKotlinScriptDef,testKotlinScriptDefCopy,testKotlinScriptDefExtensions,testKotlinScriptDefExtensionsCopy
org.jetbrains:annotations:16.0.2=koverJvmReporter
org.json:json:20210307=koverJvmReporter
empty=allSourceSetsCompileDependenciesMetadataCopy,allSourceSetsRuntimeDependenciesMetadataCopy,archives,archivesCopy,commonMainCompileOnlyCopy,commonMainCompileOnlyDependenciesMetadata,commonMainImplementationCopy,commonMainImplementationDependenciesMetadata,commonMainIntransitiveDependenciesMetadata,commonMainIntransitiveDependenciesMetadataCopy,commonMainRuntimeOnlyCopy,commonMainRuntimeOnlyDependenciesMetadata,commonTestCompileOnlyCopy,commonTestCompileOnlyDependenciesMetadata,commonTestIntransitiveDependenciesMetadata,commonTestIntransitiveDependenciesMetadataCopy,commonTestRuntimeOnlyCopy,commonTestRuntimeOnlyDependenciesMetadata,compileClasspathCopy,default,defaultCopy,jvmApiCopy,jvmApiElementsCopy,jvmCompileClasspathCopy,jvmCompileOnlyCopy,jvmImplementationCopy,jvmMainCompileOnlyCopy,jvmMainCompileOnlyDependenciesMetadata,jvmMainImplementationCopy,jvmMainImplementationDependenciesMetadata,jvmMainIntransitiveDependenciesMetadata,jvmMainIntransitiveDependenciesMetadataCopy,jvmMainRuntimeOnlyCopy,jvmMainRuntimeOnlyDependenciesMetadata,jvmRuntimeClasspathCopy,jvmRuntimeElementsCopy,jvmRuntimeOnlyCopy,jvmSourceArtifactsCopy,jvmTestApiDependenciesMetadata,jvmTestCompileOnlyCopy,jvmTestCompileOnlyDependenciesMetadata,jvmTestIntransitiveDependenciesMetadata,jvmTestIntransitiveDependenciesMetadataCopy,jvmTestRuntimeOnlyCopy,jvmTestRuntimeOnlyDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinCompilerPluginClasspathCopy,kotlinNativeCompilerPluginClasspath,kotlinNativeCompilerPluginClasspathCopy,kotlinScriptDef,kotlinScriptDefCopy,kotlinScriptDefExtensions,kotlinScriptDefExtensionsCopy,koverAggregatedSetup,metadataApiCopy,metadataApiElementsCopy,metadataCommonMainApiCopy,metadataCommonMainCompileClasspathCopy,metadataCommonMainCompileOnlyCopy,metadataCommonMainImplementationCopy,metadataCompileClasspathCopy,metadataCompileOnlyCopy,metadataImplementationCopy,testKotlinScriptDef,testKotlinScriptDefCopy,testKotlinScriptDefExtensions,testKotlinScriptDefExtensionsCopy