Tests: fixed websocket tests.
This commit is contained in:
@@ -179,18 +179,14 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
): # FAIL https://tools.ietf.org/html/rfc6455#section-4.2.1
|
): # FAIL https://tools.ietf.org/html/rfc6455#section-4.2.1
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'upgrade absent')
|
self.assertEqual(resp['status'], 400, 'upgrade absent')
|
||||||
@@ -198,20 +194,17 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_case_insensitive(self):
|
def test_java_websockets_handshake_case_insensitive(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
resp, sock, _ = self.ws.upgrade(
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'WEBSOCKET',
|
'Upgrade': 'WEBSOCKET',
|
||||||
'Connection': 'UPGRADE',
|
'Connection': 'UPGRADE',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
}
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
sock.close()
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 101, 'status')
|
self.assertEqual(resp['status'], 101, 'status')
|
||||||
|
|
||||||
@@ -219,18 +212,14 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_connection_absent(self): # FAIL
|
def test_java_websockets_handshake_connection_absent(self): # FAIL
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -238,18 +227,14 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_version_absent(self):
|
def test_java_websockets_handshake_version_absent(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 426, 'status')
|
self.assertEqual(resp['status'], 426, 'status')
|
||||||
@@ -258,8 +243,6 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_key_invalid(self):
|
def test_java_websockets_handshake_key_invalid(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
@@ -269,7 +252,6 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'key length')
|
self.assertEqual(resp['status'], 400, 'key length')
|
||||||
@@ -284,7 +266,6 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
@@ -294,19 +275,15 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_method_invalid(self):
|
def test_java_websockets_handshake_method_invalid(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.post(
|
resp = self.post(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -314,20 +291,16 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_http_10(self):
|
def test_java_websockets_handshake_http_10(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
http_10=True,
|
http_10=True,
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -335,20 +308,16 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_handshake_uri_invalid(self):
|
def test_java_websockets_handshake_uri_invalid(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
url='!',
|
url='!',
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -356,19 +325,17 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
def test_java_websockets_protocol_absent(self):
|
def test_java_websockets_protocol_absent(self):
|
||||||
self.load('websockets_mirror')
|
self.load('websockets_mirror')
|
||||||
|
|
||||||
self.get()
|
|
||||||
|
|
||||||
key = self.ws.key()
|
key = self.ws.key()
|
||||||
resp = self.get(
|
resp, sock, _ = self.ws.upgrade(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': key,
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
}
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
sock.close()
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 101, 'status')
|
self.assertEqual(resp['status'], 101, 'status')
|
||||||
self.assertEqual(resp['headers']['Upgrade'], 'websocket', 'upgrade')
|
self.assertEqual(resp['headers']['Upgrade'], 'websocket', 'upgrade')
|
||||||
@@ -1165,7 +1132,7 @@ class TestJavaWebsockets(TestApplicationJava):
|
|||||||
|
|
||||||
sock.close()
|
sock.close()
|
||||||
|
|
||||||
# 7_3_1 # FAIL
|
# 7_3_1
|
||||||
|
|
||||||
_, sock, _ = self.ws.upgrade()
|
_, sock, _ = self.ws.upgrade()
|
||||||
|
|
||||||
|
|||||||
@@ -198,16 +198,14 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
): # FAIL https://tools.ietf.org/html/rfc6455#section-4.2.1
|
): # FAIL https://tools.ietf.org/html/rfc6455#section-4.2.1
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'upgrade absent')
|
self.assertEqual(resp['status'], 400, 'upgrade absent')
|
||||||
@@ -215,18 +213,17 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
def test_node_websockets_handshake_case_insensitive(self):
|
def test_node_websockets_handshake_case_insensitive(self):
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
resp, sock, _ = self.ws.upgrade(
|
||||||
resp = self.get(
|
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'WEBSOCKET',
|
'Upgrade': 'WEBSOCKET',
|
||||||
'Connection': 'UPGRADE',
|
'Connection': 'UPGRADE',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
}
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
sock.close()
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 101, 'status')
|
self.assertEqual(resp['status'], 101, 'status')
|
||||||
|
|
||||||
@@ -234,16 +231,14 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
def test_node_websockets_handshake_connection_absent(self): # FAIL
|
def test_node_websockets_handshake_connection_absent(self): # FAIL
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -251,16 +246,14 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
def test_node_websockets_handshake_version_absent(self):
|
def test_node_websockets_handshake_version_absent(self):
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 426, 'status')
|
self.assertEqual(resp['status'], 426, 'status')
|
||||||
@@ -278,7 +271,6 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'key length')
|
self.assertEqual(resp['status'], 400, 'key length')
|
||||||
@@ -293,7 +285,6 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
@@ -303,17 +294,15 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
def test_node_websockets_handshake_method_invalid(self):
|
def test_node_websockets_handshake_method_invalid(self):
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.post(
|
resp = self.post(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -321,18 +310,16 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
def test_node_websockets_handshake_http_10(self):
|
def test_node_websockets_handshake_http_10(self):
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
http_10=True,
|
http_10=True,
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -340,18 +327,16 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
def test_node_websockets_handshake_uri_invalid(self):
|
def test_node_websockets_handshake_uri_invalid(self):
|
||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
|
||||||
resp = self.get(
|
resp = self.get(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': self.ws.key(),
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
},
|
||||||
url='!',
|
url='!',
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 400, 'status')
|
self.assertEqual(resp['status'], 400, 'status')
|
||||||
@@ -360,16 +345,16 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
self.load('websockets/mirror')
|
self.load('websockets/mirror')
|
||||||
|
|
||||||
key = self.ws.key()
|
key = self.ws.key()
|
||||||
resp = self.get(
|
resp, sock, _ = self.ws.upgrade(
|
||||||
headers={
|
headers={
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': key,
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
}
|
||||||
read_timeout=1,
|
|
||||||
)
|
)
|
||||||
|
sock.close()
|
||||||
|
|
||||||
self.assertEqual(resp['status'], 101, 'status')
|
self.assertEqual(resp['status'], 101, 'status')
|
||||||
self.assertEqual(resp['headers']['Upgrade'], 'websocket', 'upgrade')
|
self.assertEqual(resp['headers']['Upgrade'], 'websocket', 'upgrade')
|
||||||
@@ -1166,7 +1151,7 @@ class TestNodeWebsockets(TestApplicationNode):
|
|||||||
|
|
||||||
sock.close()
|
sock.close()
|
||||||
|
|
||||||
# 7_3_1 # FAIL
|
# 7_3_1
|
||||||
|
|
||||||
_, sock, _ = self.ws.upgrade()
|
_, sock, _ = self.ws.upgrade()
|
||||||
|
|
||||||
|
|||||||
@@ -31,17 +31,22 @@ class TestApplicationWebsocket(TestApplicationProto):
|
|||||||
sha1 = hashlib.sha1((key + GUID).encode()).digest()
|
sha1 = hashlib.sha1((key + GUID).encode()).digest()
|
||||||
return base64.b64encode(sha1).decode()
|
return base64.b64encode(sha1).decode()
|
||||||
|
|
||||||
def upgrade(self):
|
def upgrade(self, headers=None):
|
||||||
key = self.key()
|
key = None
|
||||||
_, sock = self.get(
|
|
||||||
headers={
|
if headers is None:
|
||||||
|
key = self.key()
|
||||||
|
headers = {
|
||||||
'Host': 'localhost',
|
'Host': 'localhost',
|
||||||
'Upgrade': 'websocket',
|
'Upgrade': 'websocket',
|
||||||
'Connection': 'Upgrade',
|
'Connection': 'Upgrade',
|
||||||
'Sec-WebSocket-Key': key,
|
'Sec-WebSocket-Key': key,
|
||||||
'Sec-WebSocket-Protocol': 'chat',
|
'Sec-WebSocket-Protocol': 'chat',
|
||||||
'Sec-WebSocket-Version': 13,
|
'Sec-WebSocket-Version': 13,
|
||||||
},
|
}
|
||||||
|
|
||||||
|
_, sock = self.get(
|
||||||
|
headers=headers,
|
||||||
no_recv=True,
|
no_recv=True,
|
||||||
start=True,
|
start=True,
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user