diff options
Diffstat (limited to 'js/src/jit-test/tests/basic/property-error-message-fix.js')
-rw-r--r-- | js/src/jit-test/tests/basic/property-error-message-fix.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/property-error-message-fix.js b/js/src/jit-test/tests/basic/property-error-message-fix.js new file mode 100644 index 0000000000..6f27416496 --- /dev/null +++ b/js/src/jit-test/tests/basic/property-error-message-fix.js @@ -0,0 +1,36 @@ +// |jit-test| skip-if: getBuildConfiguration('pbl') + +function check(f, message) { + let caught = false; + try { + f(); + } catch (e) { + assertEq(e.message, message); + caught = true; + } + assertEq(caught, true); +} + +check(() => { + let obj = { + prop: undefined + }; + obj.prop.prop2(); +}, "can't access property \"prop2\", obj.prop is undefined"); + +check(() => { + let obj = { + prop: null + }; + obj.prop.prop2(); +}, "can't access property \"prop2\", obj.prop is null"); + +check(() => { + let prop = "prop"; + undefined[prop](); +}, "can't access property \"prop\" of undefined"); + +check(() => { + let prop = "prop"; + null[prop](); +}, "can't access property \"prop\" of null"); |