mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 01:33:56 -06:00
iotests: make qemu_img raise on non-zero rc by default
re-write qemu_img() as a function that will by default raise a VerboseProcessException (extended from CalledProcessException) on non-zero return codes. This will produce a stack trace that will show the command line arguments and return code from the failed process run. Users that want something more flexible (there appears to be only one) can use check=False and manage the return themselves. However, when the return code is negative, the Exception will be raised no matter what. This is done under the belief that there's no legitimate reason, even in negative tests, to see a crash from qemu-img. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Hanna Reitz <hreitz@redhat.com> Message-Id: <20220321201618.903471-5-jsnow@redhat.com> Signed-off-by: Hanna Reitz <hreitz@redhat.com>
This commit is contained in:
parent
fc272d3ce0
commit
2882ccf86a
2 changed files with 55 additions and 10 deletions
|
@ -241,11 +241,13 @@ def compare_images(image, reference, baseimg=None, expected_match=True):
|
|||
expected_ret = 0 if expected_match else 1
|
||||
if baseimg:
|
||||
qemu_img("rebase", "-u", "-b", baseimg, '-F', iotests.imgfmt, image)
|
||||
ret = qemu_img("compare", image, reference)
|
||||
|
||||
sub = qemu_img("compare", image, reference, check=False)
|
||||
|
||||
log('qemu_img compare "{:s}" "{:s}" ==> {:s}, {:s}'.format(
|
||||
image, reference,
|
||||
"Identical" if ret == 0 else "Mismatch",
|
||||
"OK!" if ret == expected_ret else "ERROR!"),
|
||||
"Identical" if sub.returncode == 0 else "Mismatch",
|
||||
"OK!" if sub.returncode == expected_ret else "ERROR!"),
|
||||
filters=[iotests.filter_testfiles])
|
||||
|
||||
def test_bitmap_sync(bsync_mode, msync_mode='bitmap', failure=None):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue