diff -r ea12a3bb4b33 -r 789849cabcc7 launcher/fx/src/main/java/org/apidesign/bck2brwsr/launcher/FXBrwsrLauncher.java --- a/launcher/fx/src/main/java/org/apidesign/bck2brwsr/launcher/FXBrwsrLauncher.java Tue Feb 24 11:12:53 2015 +0100 +++ b/launcher/fx/src/main/java/org/apidesign/bck2brwsr/launcher/FXBrwsrLauncher.java Mon Apr 18 05:15:11 2016 +0200 @@ -97,12 +97,27 @@ } @Override - void generateBck2BrwsrJS(StringBuilder sb, Res loader) throws IOException { + void generateBck2BrwsrJS(StringBuilder sb, Res loader, String url, boolean unitTestMode) throws IOException { sb.append("(function() {\n" + " var impl = this.bck2brwsr;\n" + " this.bck2brwsr = function() { return impl; };\n"); sb.append("})(window);\n"); JVMBridge.onBck2BrwsrLoad(); + if (unitTestMode) { + sb.append("var vm = bck2brwsr();\n"); + sb.append("try {\n"); + sb.append(" (function() {\n"); + sb.append(" var cls = vm.loadClass('org.apidesign.bck2brwsr.launcher.fximpl.Console');\n"); + sb.append(" // fxbrwsr mangling\n"); + sb.append(" var inst = cls.newInstance();\n"); + int last = url.lastIndexOf('/'); + url = url.substring(0, last + 1); + sb.append(" inst.harness('").append(url).append("/data');\n"); + sb.append(" })();\n"); + sb.append("} catch (err) {\n"); + sb.append(" alert('Error executing harness: ' + err);\n"); + sb.append("}\n"); + } } @Override @@ -112,7 +127,7 @@ } String harnessResource() { - return "org/apidesign/bck2brwsr/launcher/fximpl/harness.xhtml"; + return "org/apidesign/bck2brwsr/launcher/fximpl/harness.html"; } public static void main(String... args) throws IOException {