From 0181158f3399a3efced610eaecacdb717ddec401 Mon Sep 17 00:00:00 2001 From: aSemy <897017+aSemy@users.noreply.github.com> Date: Mon, 29 Aug 2022 16:25:18 +0200 Subject: [PATCH] Defined test report extension in the report-vendor enum Thanks! --- .../kover/test/functional/cases/utils/Defaults.kt | 2 +- .../kotlinx/kover/test/functional/core/Runner.kt | 5 +++-- src/main/kotlin/kotlinx/kover/api/CoverageEngines.kt | 11 ++++++++--- .../kotlin/kotlinx/kover/appliers/KoverTaskApplier.kt | 4 ++-- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/functionalTest/kotlin/kotlinx/kover/test/functional/cases/utils/Defaults.kt b/src/functionalTest/kotlin/kotlinx/kover/test/functional/cases/utils/Defaults.kt index dbee6f1a..71972ddf 100644 --- a/src/functionalTest/kotlin/kotlinx/kover/test/functional/cases/utils/Defaults.kt +++ b/src/functionalTest/kotlin/kotlinx/kover/test/functional/cases/utils/Defaults.kt @@ -7,7 +7,7 @@ package kotlinx.kover.test.functional.cases.utils import kotlinx.kover.test.functional.core.ProjectType -internal fun defaultTestTask(projectType: ProjectType): String { +internal fun defaultTestTaskName(projectType: ProjectType): String { return when (projectType) { ProjectType.KOTLIN_JVM -> "test" ProjectType.KOTLIN_MULTIPLATFORM -> "jvmTest" diff --git a/src/functionalTest/kotlin/kotlinx/kover/test/functional/core/Runner.kt b/src/functionalTest/kotlin/kotlinx/kover/test/functional/core/Runner.kt index fd06e277..6ef989d0 100644 --- a/src/functionalTest/kotlin/kotlinx/kover/test/functional/core/Runner.kt +++ b/src/functionalTest/kotlin/kotlinx/kover/test/functional/core/Runner.kt @@ -99,8 +99,9 @@ private class RunResultImpl( override val defaultBinaryReport: String get() { - val extension = if (engineVendor == CoverageEngineVendor.JACOCO) "exec" else "ic" - return binaryReportsDirectory() + "/" + defaultTestTask(slice?.type ?: ProjectType.KOTLIN_JVM) + "." + extension + val testTaskName = defaultTestTaskName(slice?.type ?: ProjectType.KOTLIN_JVM) + val extension = engineVendor.reportFileExtension + return "${binaryReportsDirectory()}/$testTaskName.$extension" } // IntelliJ is a default Engine diff --git a/src/main/kotlin/kotlinx/kover/api/CoverageEngines.kt b/src/main/kotlin/kotlinx/kover/api/CoverageEngines.kt index 7058dd52..f1424f60 100644 --- a/src/main/kotlin/kotlinx/kover/api/CoverageEngines.kt +++ b/src/main/kotlin/kotlinx/kover/api/CoverageEngines.kt @@ -37,9 +37,14 @@ public sealed class CoverageEngineVariant( } } -internal enum class CoverageEngineVendor { - INTELLIJ, - JACOCO +/** + * @param[reportFileExtension] The coverage report file extension, without the first `.` + */ +internal enum class CoverageEngineVendor( + val reportFileExtension: String +) { + INTELLIJ("ic"), + JACOCO("exec"), } // TODO make internal in 0.7 version diff --git a/src/main/kotlin/kotlinx/kover/appliers/KoverTaskApplier.kt b/src/main/kotlin/kotlinx/kover/appliers/KoverTaskApplier.kt index 60fe018d..070c8c38 100644 --- a/src/main/kotlin/kotlinx/kover/appliers/KoverTaskApplier.kt +++ b/src/main/kotlin/kotlinx/kover/appliers/KoverTaskApplier.kt @@ -62,8 +62,8 @@ private fun Task.createTaskExtension(projectExtension: KoverProjectConfig): Kove taskExtension.isDisabled.convention(false) val reportFile = project.layout.buildDirectory.zip(projectExtension.engine) { buildDir, engine -> - val suffix = if (engine.vendor == CoverageEngineVendor.INTELLIJ) ".ic" else ".exec" - buildDir.file("kover/$name$suffix") + val suffix = engine.vendor.reportFileExtension + buildDir.file("kover/$name.$suffix") } taskExtension.reportFile.convention(reportFile)