1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/mobile/android/base/tests/testJavascriptBridge.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,52 @@ 1.4 +let java = new JavaBridge(this); 1.5 +let javaResponded = false; 1.6 + 1.7 +do_register_cleanup(() => { 1.8 + java.disconnect(); 1.9 +}); 1.10 +do_test_pending(); 1.11 + 1.12 +function check_js_int_arg(int1) { 1.13 + // Sync call from Java 1.14 + do_check_eq(int1, 1); 1.15 + java.asyncCall("checkJavaIntArg", 2); 1.16 +} 1.17 + 1.18 +function check_js_double_arg(double3) { 1.19 + // Sync call from Java 1.20 + do_check_eq(double3, 3.0); 1.21 + java.asyncCall("checkJavaDoubleArg", 4.0); 1.22 +} 1.23 + 1.24 +function check_js_boolean_arg(boolfalse) { 1.25 + // Sync call from Java 1.26 + do_check_eq(boolfalse, false); 1.27 + java.asyncCall("checkJavaBooleanArg", true); 1.28 +} 1.29 + 1.30 +function check_js_string_arg(stringfoo) { 1.31 + do_check_eq(stringfoo, "foo"); 1.32 + java.asyncCall("checkJavaStringArg", "bar"); 1.33 +} 1.34 + 1.35 +function check_js_object_arg(obj) { 1.36 + // Sync call from Java 1.37 + do_check_eq(obj.caller, "java"); 1.38 + java.asyncCall("checkJavaObjectArg", {caller: "js"}); 1.39 +} 1.40 + 1.41 +function check_js_sync_call() { 1.42 + // Sync call from Java 1.43 + java.syncCall("doJSSyncCall"); 1.44 + // respond_to_js_sync_call should have run by now because 1.45 + // do_js_sync_call calls it from Java code 1.46 + do_check_true(javaResponded); 1.47 + 1.48 + java.asyncCall("checkJSSyncCallReceived"); 1.49 + // End of test 1.50 + do_test_finished(); 1.51 +} 1.52 + 1.53 +function respond_to_js_sync_call() { 1.54 + javaResponded = true; 1.55 +}