iotest 303: explicit compression type

The test prints qcow2 header fields which depends on chosen compression
type. So, let's be explicit in what compression type we want and
independent of IMGOPTS. Test both existing compression types.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-Id: <20211223160144.1097696-8-vsementsov@virtuozzo.com>
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
This commit is contained in:
Vladimir Sementsov-Ogievskiy 2021-12-23 17:01:32 +01:00 committed by Hanna Reitz
parent 28a5ad93da
commit 677e0bae68
2 changed files with 44 additions and 9 deletions

View File

@ -54,12 +54,19 @@ def add_bitmap(num, begin, end, disabled):
log('') log('')
qemu_img_create('-f', iotests.imgfmt, disk, '10M') def test(compression_type: str, json_output: bool) -> None:
qemu_img_create('-f', iotests.imgfmt,
'-o', f'compression_type={compression_type}',
disk, '10M')
add_bitmap(1, 0, 6, False) add_bitmap(1, 0, 6, False)
add_bitmap(2, 6, 8, True) add_bitmap(2, 6, 8, True)
dump = ['./qcow2.py', disk, 'dump-header']
subprocess.run(dump) cmd = ['./qcow2.py', disk, 'dump-header']
# Dump the metadata in JSON format if json_output:
dump.append('-j') cmd.append('-j')
subprocess.run(dump)
subprocess.run(cmd)
test('zlib', False)
test('zstd', True)

View File

@ -80,6 +80,34 @@ extra_data_size 0
Bitmap table type size offset Bitmap table type size offset
0 all-zeroes 0 0 0 all-zeroes 0 0
Add bitmap 1
wrote 1048576/1048576 bytes at offset 0
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
wrote 1048576/1048576 bytes at offset 1048576
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
wrote 1048576/1048576 bytes at offset 2097152
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
wrote 1048576/1048576 bytes at offset 3145728
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
wrote 1048576/1048576 bytes at offset 4194304
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
wrote 1048576/1048576 bytes at offset 5242880
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
Add bitmap 2
wrote 1048576/1048576 bytes at offset 6291456
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
wrote 1048576/1048576 bytes at offset 7340032
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
{ {
"magic": 1363560955, "magic": 1363560955,
"version": 3, "version": 3,
@ -94,7 +122,7 @@ Bitmap table type size offset
"refcount_table_clusters": 1, "refcount_table_clusters": 1,
"nb_snapshots": 0, "nb_snapshots": 0,
"snapshot_offset": 0, "snapshot_offset": 0,
"incompatible_features": 0, "incompatible_features": 8,
"compatible_features": 0, "compatible_features": 0,
"autoclear_features": 1, "autoclear_features": 1,
"refcount_order": 4, "refcount_order": 4,