def test_unmasked_text(self): parser = websocket.HyBi07Frame('\x81\x0eLEMOOOOOOOOOON') fr, buf = parser.parse() self.assertEqual(len(fr), 1) self.assertEqual(fr[0], (websocket.DATA, 'LEMOOOOOOOOOON')) self.assertEqual(buf, '')
def test_parse_close_reason(self): frame = '\x88\x10\x03\xe8LEMOOOOOOOOOON' fr, buf = websocket.HyBi07Frame(frame).parse() self.assertEqual(len(fr), 1) self.assertEqual(fr[0], (websocket.CLOSE, (1000, 'LEMOOOOOOOOOON'))) self.assertEqual(buf, '')
def test_unmasked_text_fragments(self): parser = websocket.HyBi07Frame('\x81\x08LEMOOOOO\x80\x06OOOOON') fr, buf = parser.parse() self.assertEqual(len(fr), 2) self.assertEqual(fr[0], (websocket.DATA, "LEMOOOOO")) self.assertEqual(fr[1], (websocket.DATA, "OOOOON")) self.assertEqual(buf, '')
def test_masked_text(self): key = '\x0a\x45\x34\x1a' lemon = 'F\x00yUE\n{UE\n{UE\x0b' parser = websocket.HyBi07Frame('\x81\x8e{}{}'.format(key, lemon)) fr, buf = parser.parse() self.assertEqual(len(fr), 1) self.assertEqual(fr[0], (websocket.DATA, 'LEMOOOOOOOOOON'))
def test_parse_partial_truncated_data(self): fr, buf = websocket.HyBi07Frame('\x81\x0eLEMOOOO').parse() self.assertEqual(len(fr), 0) self.assertEqual(buf, '\x81\x0eLEMOOOO')
def test_parse_partial_no_data(self): fr, buf = websocket.HyBi07Frame('\x81\x05').parse() self.assertEqual(len(fr), 0) self.assertEqual(buf, '\x81\x05')
def test_parse_partial_truncated_length_double(self): fr, buf = websocket.HyBi07Frame('\x81\xff').parse() self.assertEqual(len(fr), 0) self.assertEqual(buf, '\x81\xff')
def test_parse_close_empty(self): fr, buf = websocket.HyBi07Frame('\x88\x00').parse() self.assertEqual(len(fr), 1) self.assertEqual(fr[0], (websocket.CLOSE, (1000, 'No reason given'))) self.assertEqual(buf, '')
def test_parse_pong(self): fr, buf = websocket.HyBi07Frame('\x8a\x0eLEMOOOOOOOOOON').parse() self.assertEqual(len(fr), 1) self.assertEqual(fr[0], (websocket.PONG, "LEMOOOOOOOOOON")) self.assertEqual(buf, '')
def test_mask_noop(self): key = '\x00\x00\x00\x00' self.assertEqual( websocket.HyBi07Frame('').mask('LEMOOOOOOOOOON', key), 'LEMOOOOOOOOOON')
def test_parse_rfc6455frame(self): frame = websocket.HyBi07Frame('\x81\x0eLEMOOOOOOOOOON') self.assertEqual(frame.parse()[0][0][1], 'LEMOOOOOOOOOON')
def test_generate_rfc6455frame(self): frame = websocket.HyBi07Frame('LEMOOOOOOOOOON') self.assertEqual(frame.generate(), '\x81\x0eLEMOOOOOOOOOON')