Test what happens when you set the window's prototype to various values.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".

PASS __proto__ = window; __proto__ threw exception TypeError: Immutable prototype object '#<Window>' cannot have their prototype set.
PASS __proto__ = chainPointingBackToWindow; __proto__ threw exception TypeError: Immutable prototype object '#<Window>' cannot have their prototype set.
PASS __proto__ = 1; __proto__ is originalWindowPrototype
PASS __proto__ = 'a string'; __proto__ is originalWindowPrototype
PASS __proto__ = anotherObject; __proto__ threw exception TypeError: Immutable prototype object '#<Window>' cannot have their prototype set.
PASS anotherObject.__proto__ = window; __proto__ is originalWindowPrototype
PASS __proto__ = 1; __proto__ is originalWindowPrototype
PASS __proto__ = 'a string'; __proto__ is originalWindowPrototype
PASS __proto__ = anotherObject; __proto__ threw exception TypeError: Immutable prototype object '#<Window>' cannot have their prototype set.
PASS __proto__ = originalWindowPrototype; __proto__ is originalWindowPrototype
PASS anotherObject.__proto__ = window; anotherObject.__proto__ is window
PASS __proto__ = null; __proto__ threw exception TypeError: Immutable prototype object '#<Window>' cannot have their prototype set.
PASS location.__proto__.__proto__ = location threw exception TypeError: Immutable prototype object '#<Location>' cannot have their prototype set.
PASS successfullyParsed is true

TEST COMPLETE

