| Index: LayoutTests/http/tests/websocket/workers/close-expected.txt
|
| diff --git a/LayoutTests/http/tests/websocket/workers/close-expected.txt b/LayoutTests/http/tests/websocket/workers/close-expected.txt
|
| index 76c85d1df269b4c75c508958d364c17df2baa151..db373ed0a23667bcb80a4a4d5062d6b9871899f1 100644
|
| --- a/LayoutTests/http/tests/websocket/workers/close-expected.txt
|
| +++ b/LayoutTests/http/tests/websocket/workers/close-expected.txt
|
| @@ -1,95 +1,97 @@
|
| -CONSOLE WARNING: line 124: WebSocket connection to 'ws://127.0.0.1:8880/close' failed: WebSocket is closed before the connection is established.
|
| -CONSOLE WARNING: line 165: WebSocket connection to 'ws://127.0.0.1:8880/close' failed: WebSocket is closed before the connection is established.
|
| +CONSOLE WARNING: line 100: WebSocket connection to 'ws://127.0.0.1:8880/close' failed: WebSocket is closed before the connection is established.
|
| +CONSOLE WARNING: line 169: WebSocket connection to 'ws://127.0.0.1:8880/close' failed: WebSocket is closed before the connection is established.
|
| Verify WebSocket::close behaviors in Worker.
|
|
|
| On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
|
|
| -Invalid code test: 0
|
| -Code 999 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 1
|
| -Code 1001 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 2
|
| -Code 2999 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 3
|
| -Code 5000 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 4
|
| -Code 66536 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 5
|
| -Code 4294968296 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 6
|
| -Code 2999.9 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 7
|
| -Code NaN must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 8
|
| -Code 0 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 9
|
| -Code 100 must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 10
|
| -Code Infinity must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 11
|
| -Code -Infinity must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -Invalid code test: 12
|
| -Code NaN must cause InvalidAccessError.
|
| -PASS PASS: worker: exceptionName is invalidAccessErr
|
| -PASS PASS: onerror() was called.
|
| -runCodeTest: onclose().
|
| -PASS PASS: worker: closeEvent.code is abnormalClosure
|
| -Skip invalid string test.
|
| -Reason test: 0
|
| - with invalid reason: 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234
|
| -Reason 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234 must cause SyntaxError.
|
| -PASS PASS: worker: result is false
|
| -PASS PASS: worker: exceptionName is syntaxErr
|
| -Reason test: 1
|
| - with invalid reason: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012©
|
| -Reason 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012© must cause SyntaxError.
|
| -PASS PASS: worker: result is false
|
| -PASS PASS: worker: exceptionName is syntaxErr
|
| -Reason test: 2
|
| -PASS PASS: onerror() was called.
|
| -runReasonTest: onclose().
|
| -PASS PASS: worker: closeEvent.code is abnormalClosure
|
| -Code and reason test: 0
|
| -Code and reason must be
|
| - code : 1000
|
| - reason: OK, Bye!
|
| -PASS PASS: worker: closeEvent.wasClean is true
|
| -PASS PASS: worker: closeEvent.code is code
|
| -PASS PASS: worker: closeEvent.reason is reason
|
| -Code and reason test: 1
|
| -Code and reason must be
|
| - code : 3000
|
| - reason: 3000
|
| -PASS PASS: worker: closeEvent.wasClean is true
|
| -PASS PASS: worker: closeEvent.code is code
|
| -PASS PASS: worker: closeEvent.reason is reason
|
| -Code and reason test: 2
|
| -Code and reason must be
|
| - code : 4000
|
| - reason: code is 4000
|
| -PASS PASS: worker: closeEvent.wasClean is true
|
| -PASS PASS: worker: closeEvent.code is code
|
| -PASS PASS: worker: closeEvent.reason is reason
|
| -Code and reason test: 3
|
| -Code and reason must be
|
| - code : 4999
|
| - reason: © Google
|
| -PASS PASS: worker: closeEvent.wasClean is true
|
| -PASS PASS: worker: closeEvent.code is code
|
| -PASS PASS: worker: closeEvent.reason is reason
|
| -DONE
|
| +
|
| +Starting worker: resources/close.js
|
| +[Worker] badCodesTest: started
|
| +[Worker] badCodesTest: 999
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 999 is neither."
|
| +[Worker] badCodesTest: 1001
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 1001 is neither."
|
| +[Worker] badCodesTest: 2999
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 2999 is neither."
|
| +[Worker] badCodesTest: 5000
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 5000 is neither."
|
| +[Worker] badCodesTest: 66536
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 65535 is neither."
|
| +[Worker] badCodesTest: 4294968296
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 65535 is neither."
|
| +[Worker] badCodesTest: 2999.9
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 2999 is neither."
|
| +[Worker] badCodesTest: NaN
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 0 is neither."
|
| +[Worker] badCodesTest: 0
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 0 is neither."
|
| +[Worker] badCodesTest: 100
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 100 is neither."
|
| +[Worker] badCodesTest: Infinity
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 65535 is neither."
|
| +[Worker] badCodesTest: -Infinity
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 0 is neither."
|
| +[Worker] badCodesTest: NaN
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "InvalidAccessError"
|
| +PASS [Worker] exceptionMessage is "Failed to execute 'close' on 'WebSocket': The code must be either 1000, or between 3000 and 4999. 0 is neither."
|
| +[Worker] goodCodeTest: started
|
| +PASS [Worker] onerror was called.
|
| +PASS [Worker] closeEvent.code is 1006
|
| +[Worker] invalidUnicodeReasonTest: started
|
| +PASS [Worker] closeEvent.wasClean is true
|
| +PASS [Worker] closeEvent.reason is "�"
|
| +[Worker] badReasonTest: started
|
| +[Worker] badReasonTest: 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "SyntaxError"
|
| +[Worker] badReasonTest: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012©
|
| +PASS [Worker] exceptionProto === DOMException.prototype is true
|
| +PASS [Worker] exceptionName is "SyntaxError"
|
| +[Worker] goodReasonTest: started
|
| +PASS [Worker] onerror was called.
|
| +PASS [Worker] closeEvent.code is 1006
|
| +[Worker] codeAndReasonTest: started
|
| +[Worker] codeAndReasonTest: 1000, 'OK, Bye!'
|
| +PASS [Worker] closeEvent.wasClean is true
|
| +PASS [Worker] closeEvent.code is 1000
|
| +PASS [Worker] closeEvent.reason is "OK, Bye!"
|
| +[Worker] codeAndReasonTest: 3000, '3000'
|
| +PASS [Worker] closeEvent.wasClean is true
|
| +PASS [Worker] closeEvent.code is 3000
|
| +PASS [Worker] closeEvent.reason is "3000"
|
| +[Worker] codeAndReasonTest: 4000, 'code is 4000'
|
| +PASS [Worker] closeEvent.wasClean is true
|
| +PASS [Worker] closeEvent.code is 4000
|
| +PASS [Worker] closeEvent.reason is "code is 4000"
|
| +[Worker] codeAndReasonTest: 4999, '© Google'
|
| +PASS [Worker] closeEvent.wasClean is true
|
| +PASS [Worker] closeEvent.code is 4999
|
| +PASS [Worker] closeEvent.reason is "© Google"
|
| PASS successfullyParsed is true
|
|
|
| TEST COMPLETE
|
|
|