diff --git a/Jenkinsfile b/Jenkinsfile index 2d21f33..705765f 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -4,7 +4,7 @@ pipeline { stages { stage('Test') { steps { - withChecks(name: 'Test', includeStage: true) { + withChecks(name: 'Test') { echo 'Testing..' sh './gradlew clean test' junit '**/build/test-results/test/TEST-*.xml' diff --git a/app/build.gradle.kts b/app/build.gradle.kts index f8889ae..1cb54dd 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -9,6 +9,7 @@ plugins { // Apply the application plugin to add support for building a CLI application in Java. application + jacoco } repositories { @@ -22,6 +23,7 @@ dependencies { // This dependency is used by the application. implementation("com.google.guava:guava:31.1-jre") + implementation("org.jacoco:org.jacoco.core:0.8.12") } // Apply a specific Java toolchain to ease working on different environments. @@ -31,6 +33,32 @@ java { } } +jacoco { + toolVersion = "0.8.12" +} + +tasks.jacocoTestCoverageVerification { + violationRules { + rule { + limit { + minimum = "0.4".toBigDecimal() + } + } + + rule { + isEnabled = false + element = "CLASS" + includes = listOf("jenkins.test.*") + + limit { + counter = "LINE" + value = "TOTALCOUNT" + maximum = "0.3".toBigDecimal() + } + } + } +} + application { // Define the main class for the application. mainClass.set("jenkins.test.App")