aboutsummaryrefslogtreecommitdiffhomepage
path: root/platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java')
-rw-r--r--platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java73
1 files changed, 22 insertions, 51 deletions
diff --git a/platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java b/platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java
index 464c9e2e71..dc9aea3f19 100644
--- a/platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java
+++ b/platform_tools/android/apps/skqp/src/main/java/org/skia/skqp/SkQPRunner.java
@@ -21,30 +21,8 @@ import org.junit.runner.notification.Failure;
import org.junit.runner.notification.RunNotifier;
public class SkQPRunner extends Runner {
- private native void nInit(AssetManager assetManager, String dataDir);
- private native float nExecuteGM(int gm, int backend) throws SkQPException;
- private native String[] nExecuteUnitTest(int test);
- private native void nMakeReport();
-
- private AssetManager mAssetManager;
- private String[] mGMs;
- private String[] mBackends;
- private String[] mUnitTests;
-
- private static boolean sOnceFlag = false;
- private static final String kSkiaGM = "SkiaGM_";
- private static final String kSkiaUnitTests = "Skia_UnitTests";
-
private Description mDescription;
-
- private static void DeleteDirectoryContents(File f) throws IOException {
- for (File s : f.listFiles()) {
- if (s.isDirectory()) {
- SkQPRunner.DeleteDirectoryContents(s);
- }
- s.delete();
- }
- }
+ private SkQP impl;
private static void Fail(Description desc, RunNotifier notifier, String failure) {
notifier.fireTestFailure(new Failure(desc, new Throwable(failure)));
@@ -53,37 +31,30 @@ public class SkQPRunner extends Runner {
////////////////////////////////////////////////////////////////////////////
public SkQPRunner(Class testClass) {
- synchronized (SkQPRunner.class) {
- if (sOnceFlag) {
- throw new IllegalStateException("Error multiple SkQPs defined");
- }
- sOnceFlag = true;
- }
- System.loadLibrary("skqp_app");
-
+ impl = new SkQP();
Context context = InstrumentationRegistry.getTargetContext();
File filesDir = context.getFilesDir();
try {
- SkQPRunner.DeleteDirectoryContents(filesDir);
+ SkQP.deleteDirectoryContents(filesDir);
} catch (IOException e) {
Log.w("org.skis.skqp", "DeleteDirectoryContents: " + e.getMessage());
}
Resources resources = context.getResources();
- mAssetManager = resources.getAssets();
- this.nInit(mAssetManager, filesDir.getAbsolutePath());
+ AssetManager mAssetManager = resources.getAssets();
+ impl.nInit(mAssetManager, filesDir.getAbsolutePath());
mDescription = Description.createSuiteDescription(testClass);
Annotation annots[] = new Annotation[0];
- for (int backend = 0; backend < mBackends.length; backend++) {
- String classname = kSkiaGM + mBackends[backend];
- for (int gm = 0; gm < mGMs.length; gm++) {
- mDescription.addChild(Description.createTestDescription(classname, mGMs[gm], annots));
+ for (int backend = 0; backend < impl.mBackends.length; backend++) {
+ String classname = SkQP.kSkiaGM + impl.mBackends[backend];
+ for (int gm = 0; gm < impl.mGMs.length; gm++) {
+ mDescription.addChild(Description.createTestDescription(classname, impl.mGMs[gm], annots));
}
}
- for (int unitTest = 0; unitTest < mUnitTests.length; unitTest++) {
- mDescription.addChild(Description.createTestDescription(kSkiaUnitTests,
- mUnitTests[unitTest], annots));
+ for (int unitTest = 0; unitTest < impl.mUnitTests.length; unitTest++) {
+ mDescription.addChild(Description.createTestDescription(SkQP.kSkiaUnitTests,
+ impl.mUnitTests[unitTest], annots));
}
}
@@ -91,20 +62,20 @@ public class SkQPRunner extends Runner {
public Description getDescription() { return mDescription; }
@Override
- public int testCount() { return mUnitTests.length + mGMs.length * mBackends.length; }
+ public int testCount() { return impl.mUnitTests.length + impl.mGMs.length * impl.mBackends.length; }
@Override
public void run(RunNotifier notifier) {
Annotation annots[] = new Annotation[0];
- for (int backend = 0; backend < mBackends.length; backend++) {
- String classname = kSkiaGM + mBackends[backend];
- for (int gm = 0; gm < mGMs.length; gm++) {
- Description desc = Description.createTestDescription(classname, mGMs[gm], annots);
+ for (int backend = 0; backend < impl.mBackends.length; backend++) {
+ String classname = SkQP.kSkiaGM + impl.mBackends[backend];
+ for (int gm = 0; gm < impl.mGMs.length; gm++) {
+ Description desc = Description.createTestDescription(classname, impl.mGMs[gm], annots);
notifier.fireTestStarted(desc);
float value = java.lang.Float.MAX_VALUE;
String error = null;
try {
- value = this.nExecuteGM(gm, backend);
+ value = impl.nExecuteGM(gm, backend);
} catch (SkQPException exept) {
error = exept.getMessage();
}
@@ -117,11 +88,11 @@ public class SkQPRunner extends Runner {
notifier.fireTestFinished(desc);
}
}
- for (int unitTest = 0; unitTest < mUnitTests.length; unitTest++) {
+ for (int unitTest = 0; unitTest < impl.mUnitTests.length; unitTest++) {
Description desc = Description.createTestDescription(
- kSkiaUnitTests, mUnitTests[unitTest], annots);
+ SkQP.kSkiaUnitTests, impl.mUnitTests[unitTest], annots);
notifier.fireTestStarted(desc);
- String[] errors = this.nExecuteUnitTest(unitTest);
+ String[] errors = impl.nExecuteUnitTest(unitTest);
if (errors != null && errors.length > 0) {
for (String error : errors) {
SkQPRunner.Fail(desc, notifier, error);
@@ -129,7 +100,7 @@ public class SkQPRunner extends Runner {
}
notifier.fireTestFinished(desc);
}
- this.nMakeReport();
+ impl.nMakeReport();
}
}