aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src/cgeo/geocaching/test/RegExPerformanceTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/cgeo/geocaching/test/RegExPerformanceTest.java')
-rw-r--r--tests/src/cgeo/geocaching/test/RegExPerformanceTest.java32
1 files changed, 17 insertions, 15 deletions
diff --git a/tests/src/cgeo/geocaching/test/RegExPerformanceTest.java b/tests/src/cgeo/geocaching/test/RegExPerformanceTest.java
index b9f8138..ec84824 100644
--- a/tests/src/cgeo/geocaching/test/RegExPerformanceTest.java
+++ b/tests/src/cgeo/geocaching/test/RegExPerformanceTest.java
@@ -8,6 +8,7 @@ import cgeo.geocaching.test.mock.MockedCache;
import cgeo.geocaching.utils.BaseUtils;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import java.util.regex.Pattern;
@@ -69,10 +70,13 @@ public class RegExPerformanceTest extends TestCase {
public final static Pattern PATTERN_DESCRIPTION = Pattern.compile("<span id=\"ctl00_ContentBody_LongDescription\">(.*?)</span>[^<]*</div>[^<]*<p>[^<]*</p>[^<]*<p>[^<]*<strong>\\W*Additional Hints</strong>");
- public final static MockedCache[] MOCKED_CACHES = { new GC2CJPF(), new GC1ZXX2(), new GC2JVEH(), new GC3XX5J() };
+ public final static List<MockedCache> MOCKED_CACHES;
+ static {
+ MOCKED_CACHES = Arrays.asList(new GC2CJPF(), new GC1ZXX2(), new GC2JVEH(), new GC3XX5J());
+ }
public static void testRegEx() {
- List<String> output = doTheTests(10);
+ final List<String> output = doTheTests(10);
for (String s : output) {
System.out.println(s);
@@ -81,7 +85,7 @@ public class RegExPerformanceTest extends TestCase {
public static List<String> doTheTests(final int iterations) {
- List<String> output = new ArrayList<String>();
+ final List<String> output = new ArrayList<String>();
output.addAll(measure(iterations, "description", PATTERN_DESCRIPTION_OLD, PATTERN_DESCRIPTION));
@@ -90,7 +94,7 @@ public class RegExPerformanceTest extends TestCase {
private static List<String> measure(int iterations, String fieldName, Pattern p1, Pattern p2) {
- List<String> output = new ArrayList<String>();
+ final List<String> output = new ArrayList<String>();
output.add(fieldName + ":");
for (MockedCache cache : MOCKED_CACHES) {
@@ -102,15 +106,13 @@ public class RegExPerformanceTest extends TestCase {
long diff1, diff2;
output.add("Parsing " + cache.getGeocode() + " " + cache.getName());
- {
- diff1 = parse(page, p1, iterations);
- output.add("Time pattern 1:\t" + diff1 + " ms");
- }
-
- {
- diff2 = parse(page, p2, iterations);
- output.add("Time pattern 2:\t" + diff2 + " ms");
- }
+
+ diff1 = parse(page, p1, iterations);
+ output.add("Time pattern 1:\t" + diff1 + " ms");
+
+ diff2 = parse(page, p2, iterations);
+ output.add("Time pattern 2:\t" + diff2 + " ms");
+
float reduction = (float) diff2 * 100 / diff1;
output.add("New runtime:\t" + String.format("%.1f", reduction) + "%\n");
}
@@ -120,11 +122,11 @@ public class RegExPerformanceTest extends TestCase {
}
private static long parse(String page, Pattern pattern, int iterations) {
- long start = System.currentTimeMillis();
+ final long start = System.currentTimeMillis();
for (int j = 0; j < iterations; j++) {
BaseUtils.getMatch(page, pattern, true, "");
}
- return (System.currentTimeMillis() - start);
+ return System.currentTimeMillis() - start;
}