aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_language_websocket.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2015-05-03 13:54:52 +1200
committerAldo Cortesi <aldo@nullcube.com>2015-05-03 13:54:52 +1200
commit5b6d3a80bbb57faa1de1cc7730d28b0678b0bdee (patch)
tree0f22273c92b0bd89464d66ef49c510aa33273344 /test/test_language_websocket.py
parent67d2993339cb81ff61509c57807df77dde436a3d (diff)
downloadmitmproxy-5b6d3a80bbb57faa1de1cc7730d28b0678b0bdee.tar.gz
mitmproxy-5b6d3a80bbb57faa1de1cc7730d28b0678b0bdee.tar.bz2
mitmproxy-5b6d3a80bbb57faa1de1cc7730d28b0678b0bdee.zip
websockets: code specification
Diffstat (limited to 'test/test_language_websocket.py')
-rw-r--r--test/test_language_websocket.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/test/test_language_websocket.py b/test/test_language_websocket.py
index 3b1d4852..f2f0b2a8 100644
--- a/test/test_language_websocket.py
+++ b/test/test_language_websocket.py
@@ -1,6 +1,8 @@
from libpathod import language
from libpathod.language import websockets
+import netlib.websockets
+import tutils
def parse_request(s):
@@ -11,7 +13,9 @@ class TestWebsocketFrame:
def test_values(self):
specs = [
"wf",
- "wf:b'foo'"
+ "wf:b'foo'",
+ "wf:cbinary",
+ "wf:c1"
]
for i in specs:
wf = parse_request(i)
@@ -23,3 +27,13 @@ class TestWebsocketFrame:
spec = wf.spec()
wf2 = parse_request(spec)
assert wf2.spec() == spec
+
+ def test_construction(self):
+ wf = parse_request("wf:c1")
+ frm = netlib.websockets.Frame.from_bytes(tutils.render(wf))
+ assert wf.code.value == 1 == frm.header.opcode
+
+ wf = parse_request("wf:cbinary")
+ frm = netlib.websockets.Frame.from_bytes(tutils.render(wf))
+ assert wf.code.value == frm.header.opcode
+ assert wf.code.value == netlib.websockets.OPCODE.BINARY