diff options
Diffstat (limited to 'test/test_websockets.py')
-rw-r--r-- | test/test_websockets.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/test_websockets.py b/test/test_websockets.py index 3fc67dfe..9e205e70 100644 --- a/test/test_websockets.py +++ b/test/test_websockets.py @@ -108,6 +108,33 @@ class TestWebSockets(test.ServerTestBase): server_frame = websockets.Frame.default(msg, from_client = False) assert server_frame.is_valid() + def test_is_valid(self): + def f(): + return websockets.Frame.default(self.random_bytes(10), True) + + frame = f() + assert frame.is_valid() + + frame = f() + frame.fin = 2 + assert not frame.is_valid() + + frame = f() + frame.mask_bit = 1 + frame.masking_key = "foobbarboo" + assert not frame.is_valid() + + frame = f() + frame.mask_bit = 0 + frame.masking_key = "foob" + assert not frame.is_valid() + + frame = f() + frame.masking_key = "foob" + frame.decoded_payload = "xxxx" + assert not frame.is_valid() + + def test_serialization_bijection(self): """ Ensure that various frame types can be serialized/deserialized back |