Commit 42eb4591 authored by Andrey Shinkevich's avatar Andrey Shinkevich Committed by Eric Blake
Browse files

iotests: handle TypeError for Python 3 in test 242



The data type for bytes in Python 3 differs from the one in Python 2.
The type cast that is compatible with both versions was applied.

Signed-off-by: default avatarNir Soffer <nsoffer@redhat.com>
Signed-off-by: default avatarAndrey Shinkevich <andrey.shinkevich@virtuozzo.com>
Reported-by: default avatarKevin Wolf <kwolf@redhat.com>
Message-Id: <1551197495-24425-1-git-send-email-andrey.shinkevich@virtuozzo.com>
Reviewed-by: default avatarEric Blake <eblake@redhat.com>
Signed-off-by: default avatarEric Blake <eblake@redhat.com>
parent d88d85f1
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@

import iotests
import json
import struct
from iotests import qemu_img_create, qemu_io, qemu_img_pipe, \
    file_path, img_info_log, log, filter_qemu_io

@@ -64,10 +65,11 @@ def write_to_disk(offset, size):
def toggle_flag(offset):
    with open(disk, "r+b") as f:
        f.seek(offset, 0)
        c = f.read(1)
        toggled = chr(ord(c) ^ bitmap_flag_unknown)
        # Read one byte in a way compatible with Python 2
        flags = struct.unpack("B", f.read(1))
        toggled = flags[0] ^ bitmap_flag_unknown
        f.seek(-1, 1)
        f.write(toggled)
        f.write(struct.pack("B", toggled))


qemu_img_create('-f', iotests.imgfmt, disk, '1M')