Index: LayoutTests/http/tests/websocket/bufferedAmount-after-send.html |
diff --git a/LayoutTests/http/tests/websocket/bufferedAmount-after-send.html b/LayoutTests/http/tests/websocket/bufferedAmount-after-send.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..1dd2652928bac20dcd1170a8a9f9495643c7f299 |
--- /dev/null |
+++ b/LayoutTests/http/tests/websocket/bufferedAmount-after-send.html |
@@ -0,0 +1,41 @@ |
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
+<html> |
+<head> |
+<script src="/js-test-resources/js-test.js"></script> |
+</head> |
+<body> |
+<script type="text/javascript"> |
+description('WebSocket bufferedAmount after send'); |
+ |
+window.jsTestIsAsync = true; |
+ |
+var ws = new WebSocket('ws://localhost:8880/echo'); |
+ |
+ws.onopen = function() |
+{ |
+ debug('onopen'); |
+ ws.send('hello'); |
+ shouldBe('ws.bufferedAmount', '5'); |
+ ws.send(new ArrayBuffer(32)); |
+ shouldBe('ws.bufferedAmount', '37'); |
+ ws.send(new Blob(['abc', 'de'])); |
+ shouldBe('ws.bufferedAmount', '42'); |
+ ws.send('bye'); |
+ shouldBe('ws.bufferedAmount', '45'); |
+ // FIXME: This is a bit flaky but I don't know how to fix it. |
+ setTimeout(function() { |
+ shouldBe('ws.bufferedAmount', '0'); |
+ ws.close(); |
+ }, 50); |
+}; |
+ |
+ws.onclose = function() |
+{ |
+ debug('onclose'); |
+ shouldBe('ws.bufferedAmount', '0'); |
+ finishJSTest(); |
+}; |
+ |
+</script> |
+</body> |
+</html> |