Files
apollo/gradle/testing.gradle
Gary Tierney 57fc49a42b Update test deps for Java 11
Prevent bytecode generation related test failures in tests that rely on
PowerMock by updating to PowerMock 2.
2019-07-16 16:35:34 +01:00

82 lines
2.4 KiB
Groovy

apply plugin: "jacoco"
def jacocoCoverageAggregate = "$buildDir/jacoco/jacocoTestAll.exec"
def testedProjects() {
subprojects.findAll { subproject -> subproject.plugins.hasPlugin('java') || subproject.plugins.hasPlugin('kotlin') }
}
gradle.projectsEvaluated {
configure(testedProjects()) {
apply plugin: "jacoco"
jacoco {
toolVersion = '0.8.4'
}
test {
reports {
junitXml.enabled = true
html.enabled = false
}
jacoco {
append = false
destinationFile = file("$buildDir/jacoco/jacocoTest.exec")
classDumpDir = file("$buildDir/jacoco/classpathdumps")
}
}
}
task jacocoMerge(type: JacocoMerge) {
destinationFile = file(jacocoCoverageAggregate)
executionData = project.fileTree(dir: '.', include: '**/build/jacoco/jacocoTest.exec')
dependsOn(getTasksByName('test', true))
}
task jacocoReport(type: JacocoReport) {
sourceDirectories = files()
classDirectories = files()
executionData = files()
reports {
html.enabled = true
xml.enabled = true
csv.enabled = false
}
// Work-around to allow us to build list of executionData files in doFirst
onlyIf = {
true
}
/*
* Builds list of source dirs, class dirs, and executionData files
* when task is run, not at script evaluation time
*/
doFirst {
subprojects.findAll { subproject ->
subproject.pluginManager.hasPlugin('java') || subproject.pluginManager.hasPlugin('kotlin')
}.each { subproject ->
additionalSourceDirs files((Set<File>) subproject.sourceSets.main.allSource.srcDirs)
additionalClassDirs((FileCollection) subproject.sourceSets.main.output)
}
executionData = files(jacocoCoverageAggregate)
}
dependsOn(jacocoMerge)
}
sonarqube {
properties {
property "sonar.organization", "apollo-rsps"
property "sonar.projectKey", "apollo:org.apollo"
property "sonar.projectName", "Apollo RSPS"
property "sonar.kotlin.file.suffixes", ".kt,.kts"
property "sonar.jacoco.reportPaths", jacocoCoverageAggregate
}
}
}