aboutsummaryrefslogtreecommitdiff
path: root/framework/org/linaro/bench/RunBench.java
diff options
context:
space:
mode:
authorScott Wakeling <scott.wakeling@linaro.org>2015-10-19 13:42:52 +0100
committerAlexandre Rames <alexandre.rames@linaro.org>2015-10-20 11:15:52 +0100
commitdb96bc95cdbb782983f4378292102b22a61a6d04 (patch)
tree100391e03f4bc5211ba5fc5c8348c5c44a6a1df8 /framework/org/linaro/bench/RunBench.java
parent9c6f977673cc599321e0f371952ec89f5ee54a0a (diff)
downloadart-testing-db96bc95cdbb782983f4378292102b22a61a6d04.tar.gz
Add Base64 benchmark.
Change-Id: If06d28640c7f73adfa894f57c48c49f24f73d97d
Diffstat (limited to 'framework/org/linaro/bench/RunBench.java')
-rw-r--r--framework/org/linaro/bench/RunBench.java21
1 files changed, 14 insertions, 7 deletions
diff --git a/framework/org/linaro/bench/RunBench.java b/framework/org/linaro/bench/RunBench.java
index 011c4a7..e724996 100644
--- a/framework/org/linaro/bench/RunBench.java
+++ b/framework/org/linaro/bench/RunBench.java
@@ -146,7 +146,7 @@ public class RunBench {
String benchmark = matcher.group(3);
List<Method> benchMethods = new ArrayList<Method>(5);
- Method verifyMethod = null;
+ List<Method> verifyMethods = new ArrayList<Method>(2);
try {
Class<?> clazz = Class.forName(benchmarkClassPath + benchmarkClass);
Object instance = clazz.newInstance();
@@ -157,8 +157,9 @@ public class RunBench {
for (Method method : clazz.getDeclaredMethods()) {
if (method.getName().startsWith(TESTNAME_PREFIX)) {
benchMethods.add(method);
- } else if (method.getName().equals("verify") && method.getReturnType() == boolean.class) {
- verifyMethod = method;
+ } else if (method.getName().startsWith("verify") &&
+ method.getReturnType() == boolean.class) {
+ verifyMethods.add(method);
}
}
}
@@ -175,10 +176,16 @@ public class RunBench {
runOneBench(instance, method);
}
- // Optionally verify benchmark results.
- if (verify && verifyMethod != null) {
- if (!(Boolean)verifyMethod.invoke(instance)) {
- log.error(clazz.getName() + " failed verification.");
+ // Optionally run all verify* methods to check benchmark's work.
+ if (verify) {
+ int verifyFailures = 0;
+ for (Method verifyMethod : verifyMethods) {
+ if (!(Boolean)verifyMethod.invoke(instance)) {
+ log.error(verifyMethod.getName() + " failed.");
+ verifyFailures++;
+ }
+ }
+ if (verifyFailures > 0) {
return 1;
}
}