| OLD | NEW |
| (Empty) |
| 1 // Try calling the browser-side bound functions with varying (invalid) | |
| 2 // inputs. There is no notion of "success" for this test, other than | |
| 3 // verifying the correct C++ bindings were reached with expected values. | |
| 4 | |
| 5 function MyObject() { | |
| 6 this.x = "3"; | |
| 7 } | |
| 8 | |
| 9 MyObject.prototype.toString = function() { | |
| 10 throw "exception from calling toString()"; | |
| 11 } | |
| 12 | |
| 13 function expectEquals(expectation, actual) { | |
| 14 if (!(expectation === actual)) { | |
| 15 throw "FAIL: expected: " + expectation + ", actual: " + actual; | |
| 16 } | |
| 17 } | |
| 18 | |
| 19 function FindProxyForURL(url, host) { | |
| 20 // Call dnsResolve with some wonky arguments. | |
| 21 // Those expected to fail (because we have passed a non-string parameter) | |
| 22 // will return |null|, whereas those that have called through to the C++ | |
| 23 // bindings will return '127.0.0.1'. | |
| 24 expectEquals(null, dnsResolve()); | |
| 25 expectEquals(null, dnsResolve(null)); | |
| 26 expectEquals(null, dnsResolve(undefined)); | |
| 27 expectEquals('127.0.0.1', dnsResolve("")); | |
| 28 expectEquals(null, dnsResolve({foo: 'bar'})); | |
| 29 expectEquals(null, dnsResolve(fn)); | |
| 30 expectEquals(null, dnsResolve(['3'])); | |
| 31 expectEquals('127.0.0.1', dnsResolve("arg1", "arg2", "arg3", "arg4")); | |
| 32 | |
| 33 // Call alert with some wonky arguments. | |
| 34 alert(); | |
| 35 alert(null); | |
| 36 alert(undefined); | |
| 37 alert({foo:'bar'}); | |
| 38 | |
| 39 // This should throw an exception when we toString() the argument | |
| 40 // to alert in the bindings. | |
| 41 try { | |
| 42 alert(new MyObject()); | |
| 43 } catch (e) { | |
| 44 alert(e); | |
| 45 } | |
| 46 | |
| 47 // Call myIpAddress() with wonky arguments | |
| 48 myIpAddress(null); | |
| 49 myIpAddress(null, null); | |
| 50 | |
| 51 // Call myIpAddressEx() correctly (no arguments). | |
| 52 myIpAddressEx(); | |
| 53 | |
| 54 // Call dnsResolveEx() (note that isResolvableEx() implicity calls it.) | |
| 55 isResolvableEx("is_resolvable"); | |
| 56 dnsResolveEx("foobar"); | |
| 57 | |
| 58 return "DIRECT"; | |
| 59 } | |
| 60 | |
| 61 function fn() {} | |
| 62 | |
| OLD | NEW |