def test_ay_buffer(): body = [bytes(10000)] msg = Message(path='/test', member='test', signature='ay', body=body) marshalled = msg._marshall() unmarshaller = Unmarshaller() unmarshaller.feed(marshalled) unmarshalled_msg = unmarshaller.unmarshall() assert unmarshalled_msg.body[0] == body[0]
def test_marshalling_with_table(): for item in table: message = Message(**item['message']) body = [] for i, type_ in enumerate(message.signature_tree.types): body.append(replace_variants(type_, message.body[i])) message.body = body buf = message._marshall() data = bytes.fromhex(item['data']) if buf != data: print('message:') print(json_dump(item['message'])) print('') print('mine:') print_buf(bytes(buf)) print('') print('theirs:') print_buf(data) assert buf == data