blob: 79486d2d8e7dc7fa9eb8378ab32ea7a3a5884628 [file] [log] [blame]
This page tests what happens when a getter / setter on the window object conflicts with another property or declared variable
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS function () {
window.__defineGetter__("x", function() { return "window.x __getter__"; });
} threw exception TypeError: Attempting to change configurable attribute of unconfigurable property..
PASS window.x is 1
PASS typeof window.__lookupGetter__('x') is 'undefined'
PASS typeof Object.getOwnPropertyDescriptor(window, 'x').get is 'undefined'
PASS function () {
window.__defineSetter__("x", function() { debug("window.x __setter__ called"); });
} threw exception TypeError: Attempting to change configurable attribute of unconfigurable property..
PASS window.x is 2
PASS typeof window.__lookupGetter__('x') is 'undefined'
PASS typeof Object.getOwnPropertyDescriptor(window, 'x').get is 'undefined'
PASS window.y is 'window.y __getter__'
PASS typeof window.__lookupGetter__('y') is 'function'
PASS typeof Object.getOwnPropertyDescriptor(window, 'y').get is 'function'
PASS window.y is 'window.y __getter__'
PASS typeof window.__lookupGetter__('y') is 'function'
PASS typeof Object.getOwnPropertyDescriptor(window, 'y').get is 'function'
PASS window.z is undefined.
PASS typeof window.__lookupSetter__('z') is 'function'
PASS typeof Object.getOwnPropertyDescriptor(window, 'z').set is 'function'