blob: 0a6ec249fa3b8a3df2770e111bbde03ce181c833 [file] [log] [blame]
<!DOCTYPE html>
<meta charset=utf-8>
<title>Test for [[SetPrototypeOf]] with Windows</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
test(function() {
assert_throws(new TypeError, function() {
Object.setPrototypeOf(window, window);
}, "Setting the prototype should throw");
}, "Setting the prototype of a window to itself via setPrototypeOf");
test(function() {
assert_throws(new TypeError, function() {
window.__proto__ = window;
}, "Setting the prototype should throw");
}, "Setting the prototype of a window to itself via __proto__");
test(function() {
assert_throws(new TypeError, function() {
Object.setPrototypeOf(window, Object.create(window));
}, "Setting the prototype should throw");
}, "Setting the prototype of a window to something that has the window on " +
"its proto chain via setPrototypeOf");
test(function() {
assert_throws(new TypeError, function() {
window.__proto__ = Object.create(window);
}, "Setting the prototype should throw");
}, "Setting the prototype of a window to something that has the window on " +
"its proto chain via __proto__");
</script>