blob: 61c04c90b4683e33c98b412289cc99e3265a5ca9 [file] [log] [blame]
CONSOLE WARNING: 'window.postMessage(message, transferables, targetOrigin)' is deprecated and will be removed in M54, around October 2016. Please use 'window.postMessage(message, targetOrigin, transferables)' instead. See https://www.chromestatus.com/features/5719033043222528 for more details.
Test that the second argument of window.postMessage is ignored or triggers an error if it is not a message port. You should see PASS message '1' through '7', followed by 'done', with messages 4-7 received below.
PASS Posting message ('1', 1): threw exception TypeError: Failed to execute 'postMessage' on 'Window': The 3rd argument is neither an array, nor does it have indexed properties.
PASS Posting message ('2', c): threw exception TypeError: Failed to execute 'postMessage' on 'Window': The 2nd argument is neither an array, nor does it have indexed properties.
PASS Posting message ('3', [object Object]): threw exception TypeError: Failed to execute 'postMessage' on 'Window': The 3rd argument is neither an array, nor does it have indexed properties.
PASS Posting message ('3a', *): threw exception TypeError: Failed to execute 'postMessage' on 'Window': The 2nd argument is neither an array, nor does it have indexed properties.
PASS Posting message ('4', [object Window]) did not throw an exception
PASS Posting message ('4a', *) did not throw an exception
PASS Posting message ('5', undefined) did not throw an exception
PASS Posting message ('5a', null): threw exception TypeError: Failed to execute 'postMessage' on 'Window': The 3rd argument is neither an array, nor does it have indexed properties.
PASS Posting message ('6', undefined) did not throw an exception
PASS Posting message ('7', [object MessagePort],[object MessagePort]) did not throw an exception
PASS Posting message ('7a', *) did not throw an exception
PASS Posting message ('7', [object MessagePort],[object MessagePort]) did not throw an exception
PASS Posting message ('2147483648', undefined) did not throw an exception
PASS Posting message ('2147483648', null): threw exception TypeError: Failed to execute 'postMessage' on 'Window': The 3rd argument is neither an array, nor does it have indexed properties.
PASS Posting message ('[object MessagePort]', [object MessagePort],[object MessagePort]) did not throw an exception
PASS Posting message ('[object MessagePort]', [object MessagePort],[object MessagePort]) did not throw an exception
PASS Posting message ('[object MessagePort],[object MessagePort]', [object MessagePort],[object MessagePort]) did not throw an exception
PASS Posting message ('data', [object MessagePort],[object MessagePort]): threw exception DataCloneError: Failed to execute 'postMessage' on 'Window': Port at index 0 is already neutered.
PASS Posting message ('[object MessagePort],[object MessagePort]', ): threw exception DataCloneError: Failed to execute 'postMessage' on 'Window': A MessagePort could not be cloned.
PASS Posting message ('[object ArrayBuffer]', [object ArrayBuffer]) did not throw an exception
PASS arrayBuffer neutered
PASS view neutered
PASS Posting message ('[object ArrayBuffer]', ): threw exception DataCloneError: Failed to execute 'postMessage' on 'Window': An ArrayBuffer is neutered and could not be cloned.
PASS Posting message ('data', [object ArrayBuffer]): threw exception DataCloneError: Failed to execute 'postMessage' on 'Window': ArrayBuffer at index 0 is already neutered.
PASS Posting message ('', ): threw exception DataCloneError: Failed to execute 'postMessage' on 'Window': An ArrayBuffer is neutered and could not be cloned.
PASS Posting message ('data', ): threw exception TypeError: Failed to execute 'postMessage' on 'Window': Value at index 0 does not have a transferable type.
PASS Posting message ('data', [object Object]): threw exception TypeError: Failed to execute 'postMessage' on 'Window': Value at index 0 is an untransferable 'undefined' value.
PASS Posting message ('data', 1,,2): threw exception TypeError: Failed to execute 'postMessage' on 'Window': Value at index 0 does not have a transferable type.
PASS Posting message ('data', ,function () { [native code] }): threw exception TypeError: Failed to execute 'postMessage' on 'Window': Value at index 0 is an untransferable 'null' value.
PASS window.postMessage() threw exception TypeError: Failed to execute 'postMessage' on 'Window': 2 arguments required, but only 0 present..
PASS window.postMessage('a') threw exception TypeError: Failed to execute 'postMessage' on 'Window': 2 arguments required, but only 1 present..
PASS Posting message ('done', undefined) did not throw an exception
Received message '4' with 0 ports.
Received message '4a' with 0 ports.
Received message '5' with 0 ports.
Received message '6' with 0 ports.
Received message '7' with 2 ports.
Received message '7a' with 2 ports.
Received message '7' with 2 ports.
Received message '2147483648' with 0 ports.
Received message '[object MessagePort]' with 2 ports.
Received message '[object MessagePort]' with 2 ports.
Received message '[object MessagePort],[object MessagePort]' with 2 ports.
Received message '[object ArrayBuffer]' with 0 ports.
Received message 'done' with 0 ports.
PASS successfullyParsed is true
TEST COMPLETE