23 lines
912 B
HTML
23 lines
912 B
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8">
|
|
<title>window.opener setter throws TypeError if [[DefineOwnProperty]] fails</title>
|
|
<link rel="help" href="https://html.spec.whatwg.org/multipage/browsers.html#dom-opener">
|
|
|
|
<script src="../../resources/testharness.js"></script>
|
|
<script src="../../resources/testharnessreport.js"></script>
|
|
|
|
<body>
|
|
<script>
|
|
test(() => {
|
|
const { set } = Object.getOwnPropertyDescriptor(window, "opener");
|
|
Object.defineProperty(window, "opener", { value: 1, writable: false, configurable: false });
|
|
assert_throws(new TypeError, () => { set.call(window, 2); });
|
|
|
|
const desc = Object.getOwnPropertyDescriptor(window, "opener");
|
|
assert_equals(desc.value, 1);
|
|
assert_false(desc.writable);
|
|
assert_true(desc.enumerable);
|
|
assert_false(desc.configurable);
|
|
}, "window.opener setter throws TypeError if called on non-configurable non-writable data property");
|
|
</script>
|