summaryrefslogtreecommitdiffstats
path: root/tests/qemu-iotests
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy2021-02-05 17:37:20 +0100
committerEric Blake2021-02-12 19:19:46 +0100
commit594427fc56758cb944a85914eefe722cc2c667b8 (patch)
tree6128f8abe8437d1870dba2bf1eb048460887dd25 /tests/qemu-iotests
parentblock/backup: implement .cancel job handler (diff)
downloadqemu-594427fc56758cb944a85914eefe722cc2c667b8.tar.gz
qemu-594427fc56758cb944a85914eefe722cc2c667b8.tar.xz
qemu-594427fc56758cb944a85914eefe722cc2c667b8.zip
iotests/264: add backup-cancel test-case
Check that cancel doesn't wait for 10s of nbd reconnect timeout. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20210205163720.887197-11-vsementsov@virtuozzo.com> Signed-off-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'tests/qemu-iotests')
-rwxr-xr-xtests/qemu-iotests/26421
-rw-r--r--tests/qemu-iotests/264.out4
2 files changed, 16 insertions, 9 deletions
diff --git a/tests/qemu-iotests/264 b/tests/qemu-iotests/264
index 347e53add5..4f96825a22 100755
--- a/tests/qemu-iotests/264
+++ b/tests/qemu-iotests/264
@@ -94,13 +94,7 @@ class TestNbdReconnect(iotests.QMPTestCase):
result = self.vm.qmp('blockdev-del', node_name='backup0')
self.assert_qmp(result, 'return', {})
- def test_mirror_cancel(self):
- # Mirror speed limit doesn't work well enough, it seems that mirror
- # will run many parallel requests anyway. MAX_IN_FLIGHT is 16 and
- # MAX_IO_BYTES is 1M in mirror.c, so let's use 20M disk.
- self.init_vm(20 * 1024 * 1024)
- self.start_job('blockdev-mirror')
-
+ def cancel_job(self):
result = self.vm.qmp('block-job-cancel', device='drive0')
self.assert_qmp(result, 'return', {})
@@ -109,6 +103,19 @@ class TestNbdReconnect(iotests.QMPTestCase):
delta_t = time.time() - start_t
self.assertTrue(delta_t < 2.0)
+ def test_mirror_cancel(self):
+ # Mirror speed limit doesn't work well enough, it seems that mirror
+ # will run many parallel requests anyway. MAX_IN_FLIGHT is 16 and
+ # MAX_IO_BYTES is 1M in mirror.c, so let's use 20M disk.
+ self.init_vm(20 * 1024 * 1024)
+ self.start_job('blockdev-mirror')
+ self.cancel_job()
+
+ def test_backup_cancel(self):
+ self.init_vm(5 * 1024 * 1024)
+ self.start_job('blockdev-backup')
+ self.cancel_job()
+
if __name__ == '__main__':
iotests.main(supported_fmts=['qcow2'])
diff --git a/tests/qemu-iotests/264.out b/tests/qemu-iotests/264.out
index fbc63e62f8..8d7e996700 100644
--- a/tests/qemu-iotests/264.out
+++ b/tests/qemu-iotests/264.out
@@ -1,5 +1,5 @@
-..
+...
----------------------------------------------------------------------
-Ran 2 tests
+Ran 3 tests
OK