summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/websockets/websocket.sub.js
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/websockets/websocket.sub.js')
-rw-r--r--testing/web-platform/tests/websockets/websocket.sub.js107
1 files changed, 107 insertions, 0 deletions
diff --git a/testing/web-platform/tests/websockets/websocket.sub.js b/testing/web-platform/tests/websockets/websocket.sub.js
new file mode 100644
index 000000000..65c4c3036
--- /dev/null
+++ b/testing/web-platform/tests/websockets/websocket.sub.js
@@ -0,0 +1,107 @@
+var __SERVER__NAME = "{{host}}";
+var __PORT = {{ports[ws][0]}};
+var __SECURE__PORT = {{ports[wss][0]}};
+var __NEW__PORT = __PORT; //All ports are non-default for now
+var __NEW__SECURE__PORT = __SECURE__PORT; //All ports are non-default for now
+var __PATH = "echo";
+var wsocket;
+var data;
+
+function IsWebSocket() {
+ if (!self.WebSocket) {
+ assert_true(false, "Browser does not support WebSocket");
+ }
+}
+
+function CreateWebSocketNonAbsolute() {
+ IsWebSocket();
+ var url = __SERVER__NAME;
+ wsocket = new WebSocket(url);
+}
+
+function CreateWebSocketNonWsScheme() {
+ IsWebSocket();
+ var url = "http://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url);
+}
+
+function CreateWebSocketNonAsciiProtocol(nonAsciiProtocol) {
+ IsWebSocket();
+ var url = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url, nonAsciiProtocol);
+}
+
+function CreateWebSocketWithAsciiSep(asciiWithSep) {
+ IsWebSocket();
+ var url = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url, asciiWithSep);
+}
+
+function CreateWebSocketWithBlockedPort(blockedPort) {
+ IsWebSocket();
+ var url = "wss://" + __SERVER__NAME + ":" + blockedPort + "/" + __PATH;
+ wsocket = new WebSocket(url);
+}
+
+function CreateWebSocketWithSpaceInUrl(urlWithSpace) {
+ IsWebSocket();
+ var url = "ws://" + urlWithSpace + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url);
+}
+
+function CreateWebSocketWithSpaceInProtocol(protocolWithSpace) {
+ IsWebSocket();
+ var url = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url, protocolWithSpace);
+}
+
+function CreateWebSocketWithRepeatedProtocols() {
+ IsWebSocket();
+ var url = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url, ["echo", "echo"]);
+}
+
+function CreateWebSocketWithRepeatedProtocolsCaseInsensitive() {
+ IsWebSocket();
+ var url = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ wsocket = new WebSocket(url, ["echo", "eCho"]);
+}
+
+function CreateWebSocket(isSecure, isProtocol, isProtocols) {
+ IsWebSocket();
+ var url;
+ if (isSecure) {
+ if (__SECURE__PORT === null) {
+ throw new Error("wss not yet supported");
+ }
+ url = "wss://" + __SERVER__NAME + ":" + __SECURE__PORT + "/" + __PATH;
+ }
+ else {
+ url = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
+ }
+
+ if (isProtocol) {
+ wsocket = new WebSocket(url, "echo");
+ }
+ else if (isProtocols) {
+ wsocket = new WebSocket(url, ["echo", "chat"]);
+ }
+ else {
+ wsocket = new WebSocket(url);
+ }
+ return wsocket;
+}
+
+function CreateControlWebSocket(isSecure) {
+ IsWebSocket();
+ var url;
+ if (isSecure) {
+ url = "wss://" + __SERVER__NAME + ":" + __SECURE__PORT + "/control";
+ }
+ else {
+ url = "ws://" + __SERVER__NAME + ":" + __PORT + "/control";
+ }
+
+ return new WebSocket(url);
+}
+