Revision b59b3d57 tests/qemu-iotests/055
b/tests/qemu-iotests/055 | ||
---|---|---|
63 | 63 |
def test_pause(self): |
64 | 64 |
self.assert_no_active_block_jobs() |
65 | 65 |
|
66 |
self.vm.pause_drive('drive0') |
|
66 | 67 |
result = self.vm.qmp('drive-backup', device='drive0', |
67 | 68 |
target=target_img, sync='full') |
68 | 69 |
self.assert_qmp(result, 'return', {}) |
... | ... | |
70 | 71 |
result = self.vm.qmp('block-job-pause', device='drive0') |
71 | 72 |
self.assert_qmp(result, 'return', {}) |
72 | 73 |
|
74 |
self.vm.resume_drive('drive0') |
|
73 | 75 |
time.sleep(1) |
74 | 76 |
result = self.vm.qmp('query-block-jobs') |
75 | 77 |
offset = self.dictpath(result, 'return[0]/offset') |
... | ... | |
113 | 115 |
|
114 | 116 |
def setUp(self): |
115 | 117 |
qemu_img('create', '-f', iotests.imgfmt, test_img, str(TestSetSpeed.image_len)) |
118 |
qemu_io('-c', 'write -P1 0 512', test_img) |
|
116 | 119 |
self.vm = iotests.VM().add_drive(test_img) |
117 | 120 |
self.vm.launch() |
118 | 121 |
|
... | ... | |
124 | 127 |
def test_set_speed(self): |
125 | 128 |
self.assert_no_active_block_jobs() |
126 | 129 |
|
130 |
self.vm.pause_drive('drive0') |
|
127 | 131 |
result = self.vm.qmp('drive-backup', device='drive0', |
128 | 132 |
target=target_img, sync='full') |
129 | 133 |
self.assert_qmp(result, 'return', {}) |
... | ... | |
141 | 145 |
self.assert_qmp(result, 'return[0]/device', 'drive0') |
142 | 146 |
self.assert_qmp(result, 'return[0]/speed', 8 * 1024 * 1024) |
143 | 147 |
|
144 |
event = self.cancel_and_wait() |
|
148 |
event = self.cancel_and_wait(resume=True)
|
|
145 | 149 |
self.assert_qmp(event, 'data/type', 'backup') |
146 | 150 |
|
147 | 151 |
# Check setting speed in drive-backup works |
152 |
self.vm.pause_drive('drive0') |
|
148 | 153 |
result = self.vm.qmp('drive-backup', device='drive0', |
149 | 154 |
target=target_img, sync='full', speed=4*1024*1024) |
150 | 155 |
self.assert_qmp(result, 'return', {}) |
... | ... | |
153 | 158 |
self.assert_qmp(result, 'return[0]/device', 'drive0') |
154 | 159 |
self.assert_qmp(result, 'return[0]/speed', 4 * 1024 * 1024) |
155 | 160 |
|
156 |
event = self.cancel_and_wait() |
|
161 |
event = self.cancel_and_wait(resume=True)
|
|
157 | 162 |
self.assert_qmp(event, 'data/type', 'backup') |
158 | 163 |
|
159 | 164 |
def test_set_speed_invalid(self): |
... | ... | |
165 | 170 |
|
166 | 171 |
self.assert_no_active_block_jobs() |
167 | 172 |
|
173 |
self.vm.pause_drive('drive0') |
|
168 | 174 |
result = self.vm.qmp('drive-backup', device='drive0', |
169 | 175 |
target=target_img, sync='full') |
170 | 176 |
self.assert_qmp(result, 'return', {}) |
... | ... | |
172 | 178 |
result = self.vm.qmp('block-job-set-speed', device='drive0', speed=-1) |
173 | 179 |
self.assert_qmp(result, 'error/class', 'GenericError') |
174 | 180 |
|
175 |
event = self.cancel_and_wait() |
|
181 |
event = self.cancel_and_wait(resume=True)
|
|
176 | 182 |
self.assert_qmp(event, 'data/type', 'backup') |
177 | 183 |
|
178 | 184 |
class TestSingleTransaction(iotests.QMPTestCase): |
... | ... | |
214 | 220 |
def test_pause(self): |
215 | 221 |
self.assert_no_active_block_jobs() |
216 | 222 |
|
223 |
self.vm.pause_drive('drive0') |
|
217 | 224 |
result = self.vm.qmp('transaction', actions=[{ |
218 | 225 |
'type': 'drive-backup', |
219 | 226 |
'data': { 'device': 'drive0', |
... | ... | |
226 | 233 |
result = self.vm.qmp('block-job-pause', device='drive0') |
227 | 234 |
self.assert_qmp(result, 'return', {}) |
228 | 235 |
|
236 |
self.vm.resume_drive('drive0') |
|
229 | 237 |
time.sleep(1) |
230 | 238 |
result = self.vm.qmp('query-block-jobs') |
231 | 239 |
offset = self.dictpath(result, 'return[0]/offset') |
Also available in: Unified diff