# HG changeset patch # User Jaroslav Tulach # Date 1358926920 -3600 # Node ID 7dbd0a097e44de27da9a0a1e4a0e0ca36e357112 # Parent c4e6e1537d66772ef095bda40fa948e9c0ba36a2 Don't run the Matrix multiplication test in Rhino - it is too slow diff -r c4e6e1537d66 -r 7dbd0a097e44 benchmarks/matrix-multiplication/src/test/java/org/apidesign/benchmark/matrixmul/MatrixTest.java --- a/benchmarks/matrix-multiplication/src/test/java/org/apidesign/benchmark/matrixmul/MatrixTest.java Wed Jan 23 08:12:20 2013 +0100 +++ b/benchmarks/matrix-multiplication/src/test/java/org/apidesign/benchmark/matrixmul/MatrixTest.java Wed Jan 23 08:42:00 2013 +0100 @@ -30,7 +30,8 @@ public MatrixTest() { } - @Compare public String tenThousandIterations() throws IOException { + @Compare(scripting = false) + public String tenThousandIterations() throws IOException { Matrix m1 = new Matrix(5); Matrix m2 = new Matrix(5); diff -r c4e6e1537d66 -r 7dbd0a097e44 vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/Compare.java --- a/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/Compare.java Wed Jan 23 08:12:20 2013 +0100 +++ b/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/Compare.java Wed Jan 23 08:42:00 2013 +0100 @@ -24,7 +24,7 @@ /** Can be applied on a method that yields a return value. * Together with {@link VMTest#create} it can be used to write - * methods which are executed in real as well as JavaScript VMs and + * methods which are executed in real VM as well as JavaScript VMs and * their results are compared. * * @author Jaroslav Tulach @@ -32,4 +32,14 @@ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) public @interface Compare { + /** Specifies whether the system should internal JavaScript interpreter + * as available via {@link javax.script.ScriptEngine}. Defaults to true, + * but in some situations (benchmarking comes to my mind), one may set this + * to false. In such case only browsers provided via + * vmtest.brwsrs property are used. For example + * "vmtest.brwsrs=firefox,google-chrome" would run the test + * in HotSpot VM, firefox and chrome and would compare the results. + * @return + */ + boolean scripting() default true; } diff -r c4e6e1537d66 -r 7dbd0a097e44 vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/CompareCase.java --- a/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/CompareCase.java Wed Jan 23 08:12:20 2013 +0100 +++ b/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/CompareCase.java Wed Jan 23 08:42:00 2013 +0100 @@ -112,10 +112,12 @@ return; } final Bck2BrwsrCase real = new Bck2BrwsrCase(m, "Java", null, false, null); - final Bck2BrwsrCase js = new Bck2BrwsrCase(m, "JavaScript", l.javaScript(), false, null); ret.add(real); - ret.add(js); - ret.add(new CompareCase(m, real, js)); + if (c.scripting()) { + final Bck2BrwsrCase js = new Bck2BrwsrCase(m, "JavaScript", l.javaScript(), false, null); + ret.add(js); + ret.add(new CompareCase(m, real, js)); + } for (String b : brwsr) { final Launcher s = l.brwsr(b); ret.add(s);