29 lines
885 B
Java
29 lines
885 B
Java
package org.sufficientlysecure.keychain;
|
|
|
|
|
|
import java.lang.reflect.Method;
|
|
|
|
import android.os.Bundle;
|
|
import androidx.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);
|
|
}
|
|
} |