Example #1
0
    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)
Example #2
0
    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))