mirror of
https://github.com/moparisthebest/open-keychain
synced 2024-12-18 05:12:16 -05:00
workaround for coverage bug (for now!)
see android bug report https://code.google.com/p/android/issues/detail?id=170607
This commit is contained in:
parent
0d61221c5f
commit
8e60ccb650
@ -114,7 +114,7 @@ android {
|
|||||||
versionCode 32300
|
versionCode 32300
|
||||||
versionName "3.2.3"
|
versionName "3.2.3"
|
||||||
applicationId "org.sufficientlysecure.keychain"
|
applicationId "org.sufficientlysecure.keychain"
|
||||||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "org.sufficientlysecure.keychain.JacocoWorkaroundJUnitRunner"
|
||||||
}
|
}
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
@ -217,7 +217,10 @@ task jacocoTestReport(type:JacocoReport) {
|
|||||||
"${buildDir}/generated/source/buildConfig/debug",
|
"${buildDir}/generated/source/buildConfig/debug",
|
||||||
"${buildDir}/generated/source/r/debug"
|
"${buildDir}/generated/source/r/debug"
|
||||||
])
|
])
|
||||||
executionData = files("${buildDir}/jacoco/testDebug.exec")
|
executionData = files([
|
||||||
|
"${buildDir}/jacoco/testDebug.exec",
|
||||||
|
"${buildDir}/outputs/code-coverage/connected/coverage.ec"
|
||||||
|
])
|
||||||
|
|
||||||
reports {
|
reports {
|
||||||
xml.enabled = true
|
xml.enabled = true
|
||||||
|
@ -0,0 +1,29 @@
|
|||||||
|
package org.sufficientlysecure.keychain;
|
||||||
|
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.support.test.runner.AndroidJUnitRunner;
|
||||||
|
|
||||||
|
|
||||||
|
public class JacocoWorkaroundJUnitRunner extends AndroidJUnitRunner {
|
||||||
|
static {
|
||||||
|
System.setProperty("jacoco-agent.destfile", "/data/data/"
|
||||||
|
+ BuildConfig.APPLICATION_ID + "/coverage.ec");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void finish(int resultCode, Bundle results) {
|
||||||
|
try {
|
||||||
|
Class rt = Class.forName("org.jacoco.agent.rt.RT");
|
||||||
|
Method getAgent = rt.getMethod("getAgent");
|
||||||
|
Method dump = getAgent.getReturnType().getMethod("dump", boolean.class);
|
||||||
|
Object agent = getAgent.invoke(null);
|
||||||
|
dump.invoke(agent, false);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
super.finish(resultCode, results);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user