ghidra/gradle/jacocoProject.gradle
2024-01-30 10:13:21 -05:00

51 lines
2.2 KiB
Groovy

/* ###
* IP: GHIDRA
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*****************************************************************************************
This file is a "mix-in" gradle script that individual gradle projects that should be included
when running jacoco
A gradle project can add itself to the jacoco run by adding the following to its build.gradle
file:
apply from: "$rootProject.projectDir/gradle/jacocoProject.gradle"
IMPORTANT!!!!! If you include this script in your project, you must have source
sets for both test and test.slow in your project, or jacoco will
fail.
*****************************************************************************************/
// Apply jacoco plugin to subprojects. This will create coverage files for each java Test task.
apply plugin:'jacoco'
dependencies {
jacocoAnt 'org.jacoco:org.jacoco.ant:0.8.11'
jacocoAgent 'org.jacoco:org.jacoco.agent:0.8.11'
}
// Clean any jacoco files that may have been left behind previously.
clean {
doFirst{
logger.debug("Deleting subproject jacoco execution data directory: $buildDir/jacoco/")
file("$buildDir/jacoco/").deleteDir() // delete jacoco executionData files in individual subprojects
logger.debug("Deleting root project jacoco execution data directory: $rootProject.buildDir/jacoco/")
file("$rootProject.buildDir/jacoco/").deleteDir() // delete jacocoMerge task output
logger.debug("Deleting jacoco report directory: $rootProject.buildDir/reports/jacoco/")
file("$rootProject.buildDir/reports/jacoco/").deleteDir() // delete jacocoReport, jacocoBranchReport output
}
}