| var names = Object.getOwnPropertyNames(Object.getOwnPropertyDescriptor({foo: 0}, "foo")); |
| assertDeepEq(names, ["value", "writable", "enumerable", "configurable"]); |
| |
| names = Object.getOwnPropertyNames(Object.getOwnPropertyDescriptor({get foo(){}}, "foo")); |
| assertDeepEq(names, ["get", "set", "enumerable", "configurable"]); |
| |
| var proxy = new Proxy({}, { |
| defineProperty(target, key, desc) { |
| var names = Object.getOwnPropertyNames(desc); |
| assertDeepEq(names, ["set", "configurable"]); |
| return true; |
| } |
| }); |
| |
| Object.defineProperty(proxy, "foo", {configurable: true, set: function() {}}); |
| |
| reportCompare(true, true); |