1.1 --- a/rt/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/CompareCase.java Tue Jan 26 04:36:23 2016 +0100
1.2 +++ b/rt/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/CompareCase.java Tue Jan 26 04:42:06 2016 +0100
1.3 @@ -21,7 +21,9 @@
1.4 import org.apidesign.bck2brwsr.vmtest.*;
1.5 import java.lang.reflect.Method;
1.6 import java.util.ArrayList;
1.7 +import java.util.HashSet;
1.8 import java.util.List;
1.9 +import java.util.Set;
1.10 import org.apidesign.bck2brwsr.launcher.Launcher;
1.11 import org.testng.Assert;
1.12 import org.testng.ITest;
1.13 @@ -158,18 +160,23 @@
1.14 if (slowdown > 0.0 && slowdownOverride != null) {
1.15 slowdown = Double.parseDouble(slowdownOverride);
1.16 }
1.17 - if (c.scripting()) {
1.18 - final Bck2BrwsrCase js = new Bck2BrwsrCase(m, "JavaScript", l.javaScript(), false, null, null);
1.19 - ret.add(js);
1.20 - ret.add(new CompareCase(m, real, js, slowdown));
1.21 - }
1.22 + Set<Launcher> unique = new HashSet<>();
1.23 for (String b : brwsr) {
1.24 final Launcher s = l.brwsr(b);
1.25 ret.add(s);
1.26 + unique.add(s);
1.27 final Bck2BrwsrCase cse = new Bck2BrwsrCase(m, b, s, false, null, null);
1.28 ret.add(cse);
1.29 ret.add(new CompareCase(m, real, cse, slowdown));
1.30 }
1.31 + if (c.scripting()) {
1.32 + final Launcher jsLauncher = l.javaScript();
1.33 + if (unique.add(jsLauncher)) {
1.34 + final Bck2BrwsrCase js = new Bck2BrwsrCase(m, "JavaScript", jsLauncher, false, null, null);
1.35 + ret.add(js);
1.36 + ret.add(new CompareCase(m, real, js, slowdown));
1.37 + }
1.38 + }
1.39 }
1.40 private static void registerBrwsrCases(Class<? extends Annotation> brwsrTest, Method m, final LaunchSetup l, List<Object> ret, String[] brwsr) {
1.41 Object c = m.getAnnotation(brwsrTest);