mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 02:24:58 -06:00
qemu-iotests: make cancel_and_wait() common
The cancel_and_wait() function has been duplicated in 030 and 041. Move it into iotests.py and let it return the event so tests can perform additional asserts. Note that 041's cancel_and_wait(wait_ready=True) is replaced by wait_ready_and_cancel(), which uses the new wait_ready() and cancel_and_wait() underneath. Suggested-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
ecc1c88efd
commit
2575fe16d2
3 changed files with 38 additions and 53 deletions
|
@ -31,21 +31,6 @@ test_img = os.path.join(iotests.test_dir, 'test.img')
|
|||
class ImageStreamingTestCase(iotests.QMPTestCase):
|
||||
'''Abstract base class for image streaming test cases'''
|
||||
|
||||
def cancel_and_wait(self, drive='drive0'):
|
||||
'''Cancel a block job and wait for it to finish'''
|
||||
result = self.vm.qmp('block-job-cancel', device=drive)
|
||||
self.assert_qmp(result, 'return', {})
|
||||
|
||||
cancelled = False
|
||||
while not cancelled:
|
||||
for event in self.vm.get_qmp_events(wait=True):
|
||||
if event['event'] == 'BLOCK_JOB_CANCELLED':
|
||||
self.assert_qmp(event, 'data/type', 'stream')
|
||||
self.assert_qmp(event, 'data/device', drive)
|
||||
cancelled = True
|
||||
|
||||
self.assert_no_active_block_jobs()
|
||||
|
||||
def create_image(self, name, size):
|
||||
file = open(name, 'w')
|
||||
i = 0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue