summaryrefslogtreecommitdiff
path: root/platform/android/gradle/jacoco-report.gradle
blob: e50facb68386007707a2b44fdabb00ad7cad647d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
apply plugin: 'jacoco'
apply from: "${rootDir}/gradle/dependencies.gradle"

jacoco {
    toolVersion = versions.jacoco
}

task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest']) {
    group = "Reporting"
    description = "Combine code coverage to unified report."

    reports {
        xml.enabled = true
        html.enabled = true
    }

    def fileExcludes = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*']
    def debugTree = fileTree(dir: "${project.buildDir}/intermediates/javac/debug/compileDebugJavaWithJavac/classes", excludes: fileExcludes)
    def mainSrc = "${project.projectDir}/src/main/java"
    println(mainSrc)
    def ecSrc = fileTree(dir: "$project.buildDir", include: "**/*.ec")
    def execSrc = fileTree(dir: "$project.buildDir", include: "**/*.exec")

    doFirst {
        def files = files([ecSrc, execSrc]).files
        println "Creating Jacoco Report for ${files.size()} coverage files"
        files.each { file -> println file }
    }

    sourceDirectories = files([mainSrc])
    classDirectories = files([debugTree])
    executionData = files([ecSrc, execSrc])
}