Search code examples
gradleandroid-gradle-plugingradle-kotlin-dsl

How to convert testOptions.unitTests.all to gradle Kotlin dsl


How this code should be translated from Groovy to Kotlin DSL in Gradle?

testOptions.unitTests.all {
    testLogging {
        exceptionFormat = "full"
        events "passed", "failed", "standardError"
        showCauses true
        showExceptions true
    }
}

Solution

  • Use this:

    import org.gradle.api.tasks.testing.logging.TestExceptionFormat
    import org.gradle.api.tasks.testing.logging.TestLogEvent
    
    testOptions.unitTests.apply {
        all(KotlinClosure1<Test, Test>({
            apply {
                testLogging.exceptionFormat = TestExceptionFormat.FULL
                testLogging.events = setOf(
                    TestLogEvent.PASSED,
                    TestLogEvent.FAILED,
                    TestLogEvent.STANDARD_ERROR
                )
                testLogging.showCauses = true
                testLogging.showExceptions = true
            }
        }, this))
    }