def test_bad_padding(self): with self.assertRaises(ValueError): etao.BlockCodec(16, right_pad=b'\x00\x01')
def test_encode_padded(self): codec = etao.BlockCodec(16, right_pad=b'\x00') self.assertEqual( codec.encode(b'YELLOW SUBMARINEDEADBEEF'), [b'YELLOW SUBMARINE', b'DEADBEEF\x00\x00\x00\x00\x00\x00\x00\x00'])
def test_decode_nothing(self): codec = etao.BlockCodec(5) self.assertEqual(codec.decode([]), b'')
def test_decode(self): codec = etao.BlockCodec(5) blocks = [b'HELLO', b'WORLD'] self.assertEqual(codec.decode(blocks), b'HELLOWORLD')
def test_encode_nothing(self): codec = etao.BlockCodec(16) self.assertEqual(codec.encode(b''), [])
def test_encode(self): codec = etao.BlockCodec(16) self.assertEqual(codec.encode(b'DEADBEEFDEADBEEF' * 3), [b'DEADBEEFDEADBEEF' for x in range(3)])