def test_amend(fake_scheduler, env_type): fmt = sc.name2type('cow') job_id = make_uuid() with make_env(env_type, fmt, sd_version=4, qcow2_compat='0.10') as env: env_vol = env.chain[0] generation = env_vol.getMetaParam(sc.GENERATION) assert env_vol.getQemuImageInfo()['compat'] == '0.10' vol = dict(endpoint_type='div', sd_id=env_vol.sdUUID, img_id=env_vol.imgUUID, vol_id=env_vol.volUUID, generation=generation) qcow2_attr = dict(compat='1.1') job = amend_volume.Job(job_id, 0, vol, qcow2_attr) job.run() assert jobs.STATUS.DONE == job.status assert env_vol.getQemuImageInfo()['compat'] == '1.1' assert env_vol.getMetaParam(sc.GENERATION) == generation + 1
def test_sd_version_no_support_compat(fake_scheduler, env_type): fmt = sc.name2type('cow') job_id = make_uuid() with make_env(env_type, fmt, sd_version=3) as env: env_vol = env.chain[0] generation = env_vol.getMetaParam(sc.GENERATION) vol = dict(endpoint_type='div', sd_id=env_vol.sdUUID, img_id=env_vol.imgUUID, vol_id=env_vol.volUUID, generation=generation) qcow2_attr = dict(compat='1.1') job = amend_volume.Job(job_id, 0, vol, qcow2_attr) job.run() assert job.status == jobs.STATUS.FAILED assert type(job.error) == se.GeneralException assert env_vol.getLegality() == sc.LEGAL_VOL assert env_vol.getMetaParam(sc.GENERATION) == generation
def test_sd_version_no_support_compat(self, env_type): fmt = sc.name2type('cow') job_id = make_uuid() with self.make_env(env_type, fmt, sd_version=3) as env: env_vol = env.chain[0] generation = env_vol.getMetaParam(sc.GENERATION) vol = dict(endpoint_type='div', sd_id=env_vol.sdUUID, img_id=env_vol.imgUUID, vol_id=env_vol.volUUID, generation=generation) qcow2_attr = dict(compat='1.1') job = amend_volume.Job(job_id, 0, vol, qcow2_attr) job.run() self.assertEqual(jobs.STATUS.FAILED, job.status) self.assertEqual(type(job.error), se.GeneralException) self.assertEqual(sc.LEGAL_VOL, env_vol.getLegality()) self.assertEqual(generation, env_vol.getMetaParam(sc.GENERATION))
def test_amend(self, env_type): fmt = sc.name2type('cow') job_id = make_uuid() with self.make_env(env_type, fmt, sd_version=4, qcow2_compat='0.10') as env: env_vol = env.chain[0] generation = env_vol.getMetaParam(sc.GENERATION) self.assertEqual('0.10', env_vol.getQemuImageInfo()['compat']) vol = dict(endpoint_type='div', sd_id=env_vol.sdUUID, img_id=env_vol.imgUUID, vol_id=env_vol.volUUID, generation=generation) qcow2_attr = dict(compat='1.1') job = amend_volume.Job(job_id, 0, vol, qcow2_attr) job.run() self.assertEqual(jobs.STATUS.DONE, job.status) self.assertEqual('1.1', env_vol.getQemuImageInfo()['compat']) self.assertEqual(generation + 1, env_vol.getMetaParam(sc.GENERATION))