Test that window.onerror and "error" event listeners from main world are invoked for uncaught exceptions in the main world, user scripts, isolated worlds. The `error` object in the event is sanitized out across worlds.


User Script
Main world window.onerror: SerializableError from (user script) at :5:59 SerializableError from (user script)
Main world error event listener: SerializableError from (user script) at :5:59 SerializableError from (user script)
Main world window.onerror: [object Window] at undefined:0:0 null
Main world error event listener: [object Window] at undefined:0:0 null

Main World
Main world window.onerror: SerializableError from (main world) at window-onerror-for-isolated-world-3.html:49:59 SerializableError from (main world)
Main world error event listener: SerializableError from (main world) at window-onerror-for-isolated-world-3.html:49:59 SerializableError from (main world)
Main world window.onerror: [object Window] at window-onerror-for-isolated-world-3.html:55:27 [object Window]
Main world error event listener: [object Window] at window-onerror-for-isolated-world-3.html:55:27 [object Window]

Isolated World
Main world window.onerror: SerializableError from (isolated script) at window-onerror-for-isolated-world-3.html:5:59 SerializableError from (isolated script)
Main world error event listener: SerializableError from (isolated script) at window-onerror-for-isolated-world-3.html:5:59 SerializableError from (isolated script)
Main world window.onerror: [object Window] at window-onerror-for-isolated-world-3.html:11:27 null
Main world error event listener: [object Window] at window-onerror-for-isolated-world-3.html:11:27 null
