Am 22.05.2015 um 17:29 hat John Snow geschrieben: > > > On 05/22/2015 11:02 AM, Kevin Wolf wrote: > > Am 18.04.2015 um 01:50 hat John Snow geschrieben: > >> Signed-off-by: John Snow <js...@redhat.com> > >> Reviewed-by: Max Reitz <mre...@redhat.com> > >> --- > >> tests/qemu-iotests/124 | 174 > >> +++++++++++++++++++++++++++++++++++++++++++-- > >> tests/qemu-iotests/124.out | 4 +- > >> 2 files changed, 172 insertions(+), 6 deletions(-) > >> > >> diff --git a/tests/qemu-iotests/124 b/tests/qemu-iotests/124 > >> index 85675ec..5c3b434 100644 > >> --- a/tests/qemu-iotests/124 > >> +++ b/tests/qemu-iotests/124 > >> @@ -29,6 +29,51 @@ def io_write_patterns(img, patterns): > >> iotests.qemu_io('-c', 'write -P%s %s %s' % pattern, img) > >> > >> > >> +def try_remove(img): > >> + try: > >> + os.remove(img) > >> + except OSError: > >> + pass > >> + > >> + > >> +class Bitmap: > >> + def __init__(self, name, drive): > >> + self.name = name > >> + self.drive = drive > >> + self.num = 0 > >> + self.backups = list() > >> + > >> + def base_target(self): > >> + return (self.drive['backup'], None) > >> + > >> + def new_target(self, num=None): > >> + if num is None: > >> + num = self.num > >> + self.num = num + 1 > >> + base = os.path.join(iotests.test_dir, > >> + "%s.%s." % (self.drive['id'], self.name)) > >> + suff = "%i.%s" % (num, self.drive['fmt']) > >> + target = base + "inc" + suff > >> + reference = base + "ref" + suff > >> + self.backups.append((target, reference)) > >> + return (target, reference) > >> + > >> + def last_target(self): > >> + if self.backups: > >> + return self.backups[-1] > >> + return self.base_target() > >> + > >> + def del_target(self): > >> + for image in self.backups.pop(): > >> + try_remove(image) > >> + self.num -= 1 > >> + > >> + def cleanup(self): > >> + for backup in self.backups: > >> + for image in backup: > >> + try_remove(image) > >> + > >> + > >> class TestIncrementalBackup(iotests.QMPTestCase): > >> def setUp(self): > >> self.bitmaps = list() > >> @@ -73,6 +118,128 @@ class TestIncrementalBackup(iotests.QMPTestCase): > >> iotests.qemu_img('create', '-f', fmt, img, size) > >> self.files.append(img) > >> > >> + > >> + def do_qmp_backup(self, error='Input/output error', **kwargs): > >> + res = self.vm.qmp('drive-backup', **kwargs) > >> + self.assert_qmp(res, 'return', {}) > >> + > >> + event = self.vm.event_wait(name="BLOCK_JOB_COMPLETED", > >> + match={'data': {'device': > >> kwargs['device']}}) > >> + self.assertIsNotNone(event) > > > > RHEL 6 doesn't have self.assertIsNotNone(), so 124 fails there now. Can > > you send a follow-up patch to fix this? > > > > Kevin > > > > What's the minimum version requirement for RHEL6, for future information?
$ python --version Python 2.6.5 Kevin