// isSealed/isFrozen should short-circuit. var count = 0; var target = Object.preventExtensions({a: 1, b: 2, c: 3}); var p = new Proxy(target, { getOwnPropertyDescriptor(t, id) { count++; return Object.getOwnPropertyDescriptor(t, id); } }); assertEq(Object.isSealed(p), false); assertEq(count, 1); count = 0; assertEq(Object.isFrozen(p), false); assertEq(count, 1); Object.seal(target); count = 0; assertEq(Object.isSealed(p), true); assertEq(count, 3); count = 0; assertEq(Object.isFrozen(p), false); assertEq(count, 1); Object.freeze(target); count = 0; assertEq(Object.isFrozen(p), true); assertEq(count, 3);