summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/websockets/Send-binary-blob.htm
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/websockets/Send-binary-blob.htm')
-rw-r--r--testing/web-platform/tests/websockets/Send-binary-blob.htm48
1 files changed, 48 insertions, 0 deletions
diff --git a/testing/web-platform/tests/websockets/Send-binary-blob.htm b/testing/web-platform/tests/websockets/Send-binary-blob.htm
new file mode 100644
index 000000000..fa14f4cd4
--- /dev/null
+++ b/testing/web-platform/tests/websockets/Send-binary-blob.htm
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <title>W3C WebSocket API - Send binary data - Blob - WebSocket</title>
+ <script type="text/javascript" src="/resources/testharness.js"></script>
+ <script type="text/javascript" src="/resources/testharnessreport.js"></script>
+ <script type="text/javascript" src="websocket.sub.js"></script>
+</head>
+<body>
+ <div id="log"></div>
+ <script type="text/javascript">
+
+ var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Connection should be opened");
+ var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Message should be received");
+ var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Connection should be closed");
+
+ var data = "";
+ var datasize = 65000;
+ var isOpenCalled = false;
+
+ var wsocket = CreateWebSocket(false, false, false);
+
+ wsocket.addEventListener('open', testOpen.step_func(function (evt) {
+ wsocket.binaryType = "blob";
+ for (var i = 0; i < datasize; i++)
+ data += String.fromCharCode(0);
+ data = new Blob([data]);
+ isOpenCalled = true;
+ wsocket.send(data);
+ testOpen.done();
+ }), true);
+
+ wsocket.addEventListener('message', testMessage.step_func(function (evt) {
+ assert_true(evt.data instanceof Blob);
+ assert_equals(evt.data.size, datasize);
+ wsocket.close();
+ testMessage.done();
+ }), true);
+
+ wsocket.addEventListener('close', testClose.step_func(function (evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_true(evt.wasClean, "wasClean should be true");
+ testClose.done();
+ }), true);
+
+ </script>
+</body>
+</html>