diff options
Diffstat (limited to '')
-rw-r--r-- | js/src/jit-test/tests/proxy/testDirectProxyGet4.js | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/proxy/testDirectProxyGet4.js b/js/src/jit-test/tests/proxy/testDirectProxyGet4.js new file mode 100644 index 0000000000..4fc7b2f9a3 --- /dev/null +++ b/js/src/jit-test/tests/proxy/testDirectProxyGet4.js @@ -0,0 +1,14 @@ +load(libdir + "asserts.js"); + +/* + * Throw a TypeError if the trap does not report undefined for a non-configurable + * accessor property that does not have a getter + */ +var target = {}; +Object.defineProperty(target, 'foo', { + set: function (value) {}, + configurable: false +}); +var handler = { get: function (target, name, receiver) { return 'baz'; } }; +for (let p of [new Proxy(target, handler), Proxy.revocable(target, handler).proxy]) + assertThrowsInstanceOf(function () { p['foo'] }, TypeError); |