[Kimchi-devel] [PATCH 1/3] snapshot: Handle non-existing snapshots in mock lookup
Aline Manera
alinefm at linux.vnet.ibm.com
Mon Apr 27 15:34:42 UTC 2015
Reviewed-by: Aline Manera <alinefm at linux.vnet.ibm.com>
On 20/04/2015 15:58, Crístian Deives wrote:
> The function "_mock_vmsnapshot_lookup" doesn't handle the case when the
> provided snapshot name doesn't exist. In that case, it returns None.
>
> Fix the function mentioned above so when the provided snapshot name
> doesn't exist, a proper exception is raised.
>
> Signed-off-by: Crístian Deives <cristiandeives at gmail.com>
> ---
> src/kimchi/mockmodel.py | 3 +++
> tests/test_rest.py | 4 ++++
> 2 files changed, 7 insertions(+)
>
> diff --git a/src/kimchi/mockmodel.py b/src/kimchi/mockmodel.py
> index 413ac5d..dcb8bc1 100644
> --- a/src/kimchi/mockmodel.py
> +++ b/src/kimchi/mockmodel.py
> @@ -31,6 +31,7 @@ from lxml.builder import E
> from kimchi import config
> from kimchi import imageinfo
> from kimchi import osinfo
> +from kimchi.exception import NotFoundError
> from kimchi.model.debugreports import DebugReportsModel
> from kimchi.model.host import DeviceModel
> from kimchi.model.libvirtstoragepool import IscsiPoolDef, NetfsPoolDef
> @@ -419,6 +420,8 @@ class MockModel(Model):
> if sn.name == name:
> return sn.info
>
> + raise NotFoundError('KCHSNAP0003E', {'name': name, 'vm': vm_name})
> +
> def _mock_vmsnapshot_delete(self, vm_name, name):
> snapshots = MockModel._mock_snapshots.get(vm_name, [])
> for sn in snapshots:
> diff --git a/tests/test_rest.py b/tests/test_rest.py
> index ee350b2..c1b81e8 100644
> --- a/tests/test_rest.py
> +++ b/tests/test_rest.py
> @@ -334,6 +334,10 @@ class RestTests(unittest.TestCase):
> task = json.loads(self.request('/tasks/%s' % task['id']).read())
> self.assertEquals('finished', task['status'])
>
> + # Look up a non-existing snapshot
> + resp = self.request('/vms/test-vm/snapshots/snap404', '{}', 'GET')
> + self.assertEquals(404, resp.status)
> +
> # Look up a snapshot
> resp = self.request('/vms/test-vm/snapshots/%s' % params['name'], '{}',
> 'GET')
More information about the Kimchi-devel
mailing list