def test_to_wire(self): opcode, filename, mode = (WRQPacket.opcode, 'file'.encode(), 'octet'.encode()) raw_data = b''.join((struct.pack("!H", opcode), filename, b'\x00', mode, b'\x00')) packet = WRQPacket(filename, mode) self.assertEqual(packet.to_wire(), raw_data)
def test_create_good_input(self): factory = PacketFactory() p = WRQPacket('file'.encode(), 'netascii'.encode()) self.assertTrue(isinstance(factory.create(p.to_wire()), WRQPacket)) p = DataPacket(4, 'data'.encode()) self.assertTrue(isinstance(factory.create(p.to_wire()), DataPacket)) p = ACKPacket(12) self.assertTrue(isinstance(factory.create(p.to_wire()), ACKPacket)) p = ErrorPacket(1) self.assertTrue(isinstance(factory.create(p.to_wire()), ErrorPacket))