summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/websockets/Send-binary-arraybuffer.htm
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/websockets/Send-binary-arraybuffer.htm')
-rw-r--r--testing/web-platform/tests/websockets/Send-binary-arraybuffer.htm44
1 files changed, 44 insertions, 0 deletions
diff --git a/testing/web-platform/tests/websockets/Send-binary-arraybuffer.htm b/testing/web-platform/tests/websockets/Send-binary-arraybuffer.htm
new file mode 100644
index 000000000..b960b921a
--- /dev/null
+++ b/testing/web-platform/tests/websockets/Send-binary-arraybuffer.htm
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <title>W3C WebSocket API - Send binary data - ArrayBuffer - 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 - ArrayBuffer - Connection should be opened");
+ var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Message should be received");
+ var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Connection should be closed");
+
+ var data = "";
+ var datasize = 15;
+ var wsocket = CreateWebSocket(false, false, false);
+ var isOpenCalled = false;
+
+ wsocket.addEventListener('open', testOpen.step_func(function (evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ wsocket.send(data);
+ assert_equals(datasize, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+ }), true);
+
+ wsocket.addEventListener('message', testMessage.step_func(function (evt) {
+ assert_equals(evt.data.byteLength, datasize);
+ wsocket.close();
+ testMessage.done();
+ }), true);
+
+ wsocket.addEventListener('close', testClose.step_func(function (evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+ }), true);
+ </script>
+</body>
+</html>