Skip to content

Commit

Permalink
Switch to built-in JUnit platform support
Browse files Browse the repository at this point in the history
  • Loading branch information
Sergey Chelombitko committed Aug 3, 2024
1 parent 326b44b commit d04d12d
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 34 deletions.
4 changes: 0 additions & 4 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,3 @@ plugins {
repositories {
mavenCentral()
}

dependencies {
implementation("org.junit.platform:junit-platform-gradle-plugin:1.0.0")
}
24 changes: 5 additions & 19 deletions buildSrc/src/main/kotlin/Testing.kt
Original file line number Diff line number Diff line change
@@ -1,38 +1,24 @@
import org.gradle.api.Project
import org.gradle.api.tasks.testing.Test
import org.gradle.kotlin.dsl.apply
import org.gradle.kotlin.dsl.dependencies
import org.gradle.kotlin.dsl.withType
import org.junit.platform.gradle.plugin.JUnitPlatformExtension

object Testing {
fun configure(project: Project) {
project.apply(plugin = "org.junit.platform.gradle.plugin")

project.dependencies {
add("testImplementation", TestLibraries.kluent)
add("testImplementation", TestLibraries.mockitoKotlin)
add("testImplementation", TestLibraries.spekAPI)
add("testImplementation", TestLibraries.junit5)
add("testImplementation", TestLibraries.junitJupiterApi)
add("testRuntimeOnly", TestLibraries.junitJupiterEngine)
add("testRuntimeOnly", TestLibraries.spekJUnitPlatformEngine)
add("testRuntimeOnly", TestLibraries.jupiterEngine)
}

project.extensions.getByType(JUnitPlatformExtension::class.java).apply {
filters {
engines {
include("spek")
}
project.tasks.withType<Test>().configureEach {
useJUnitPlatform {
includeEngines("spek", "junit-jupiter")
}
enableStandardTestTask = true
}

project.tasks.withType<Test>().all {
project.tasks.getByName("check").dependsOn(this)
useJUnitPlatform()
}

project.tasks.getByName("junitPlatformTest").outputs.upToDateWhen { false }
project.tasks.getByName("test").outputs.upToDateWhen { false }
}
}
7 changes: 3 additions & 4 deletions buildSrc/src/main/kotlin/Versions.kt
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,14 @@ object Versions {
val junit5 = "5.6.0"
val kluent = "1.64"

val androidxTest = "1.3.0"
val junit = "4.12"
val gson = "2.8.5"
val apacheCommonsText = "1.3"
val apacheCommonsIO = "2.6"
val apacheCommonsCollections = "4.4"
val jacksonDatabind = "2.9.5"
val testContainers = "1.15.3"
val jupiterEngine = "5.1.0"
val junitJupiter = "5.10.3"
val scalr = "4.2"
val allureJava = "2.28.0"
val allureEnvironment = "1.0.0"
Expand Down Expand Up @@ -72,10 +71,10 @@ object TestLibraries {
val ktorClientMock = "io.ktor:ktor-client-mock-jvm:${Versions.ktor}"
val kotlinCoroutinesTest = "org.jetbrains.kotlinx:kotlinx-coroutines-test"

val androidxTestRunner = "androidx.test:runner:${Versions.androidxTest}"
val junit = "junit:junit:${Versions.junit}"
val mockitoKotlin = "org.mockito.kotlin:mockito-kotlin:${Versions.mockitoKotlin}"
val jupiterEngine = "org.junit.jupiter:junit-jupiter-engine:${Versions.jupiterEngine}"
val junitJupiterApi = "org.junit.jupiter:junit-jupiter-api:${Versions.junitJupiter}"
val junitJupiterEngine = "org.junit.jupiter:junit-jupiter-engine:${Versions.junitJupiter}"
val koin = "io.insert-koin:koin-test:${Versions.koin}"
val jsonAssert = "org.skyscreamer:jsonassert:${Versions.jsonAssert}"

Expand Down
11 changes: 4 additions & 7 deletions core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ plugins {
idea
`java-library`
id("org.jetbrains.kotlin.jvm")
jacoco
}

sourceSets {
Expand Down Expand Up @@ -44,12 +43,6 @@ dependencies {
testImplementation(TestLibraries.koin)
}

tasks.named<JacocoReport>("jacocoTestReport").configure {
reports.xml.required.set(true)
reports.html.required.set(true)
dependsOn(tasks.named("test"))
}

val integrationTest = task<Test>("integrationTest") {
description = "Runs integration tests."
group = "verification"
Expand All @@ -62,5 +55,9 @@ val integrationTest = task<Test>("integrationTest") {
shouldRunAfter("test")
}

tasks.named("check") {
dependsOn(integrationTest)
}

Deployment.initialize(project)
Testing.configure(project)

0 comments on commit d04d12d

Please sign in to comment.