From b856d82ae2080dd5c35a8d71c069490a87b14d8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Thu, 11 Jun 2015 12:54:15 +0200 Subject: Jacoco support for local unit tests --- OpenKeychain/build.gradle | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) (limited to 'OpenKeychain') diff --git a/OpenKeychain/build.gradle b/OpenKeychain/build.gradle index 081d87462..1334d0d66 100644 --- a/OpenKeychain/build.gradle +++ b/OpenKeychain/build.gradle @@ -1,5 +1,6 @@ apply plugin: 'com.android.application' apply plugin: 'witness' +apply plugin: 'jacoco' dependencies { // NOTE: Always use fixed version codes not dynamic ones, e.g. 0.7.3 instead of 0.7.+, see README for more information @@ -136,6 +137,10 @@ android { // Reference them in .xml files. resValue "string", "account_type", "org.sufficientlysecure.keychain.debug.account" + + // Disabled: only works for androidTest not test! + // Enable code coverage (Jacoco) + //testCoverageEnabled true } } @@ -187,7 +192,33 @@ android { exclude 'LICENSE.txt' } } - + +task jacocoTestReport(type:JacocoReport) { + group = "Reporting" + description = "Generate Jacoco coverage reports" + + classDirectories = fileTree( + dir: "${buildDir}/intermediates/classes/debug", + excludes: ['**/R.class', + '**/R$*.class', + '**/*$ViewInjector*.*', + '**/BuildConfig.*', + '**/Manifest*.*'] + ) + + sourceDirectories = files("${buildDir.parent}/src/main/java") + additionalSourceDirs = files([ + "${buildDir}/generated/source/buildConfig/debug", + "${buildDir}/generated/source/r/debug" + ]) + executionData = files("${buildDir}/jacoco/testDebug.exec") + + reports { + xml.enabled = true + html.enabled = true + } +} + // NOTE: This disables Lint! tasks.whenTaskAdded { task -> if (task.name.contains('lint')) { -- cgit v1.2.3