[Kimchi-devel] [PATCH v2] Does not list non-bootable images

Aline Manera alinefm at linux.vnet.ibm.com
Fri May 29 19:41:03 UTC 2015



On 29/05/2015 11:13, Ramon Medeiros wrote:
> Also fix tests that were using non-bootable isos.
>
> Signed-off-by: Ramon Medeiros <ramonn at linux.vnet.ibm.com>
>
> Changes
>
> v2:
> Fix tests that were listing non-bootable isos
>
> ---
>   src/kimchi/model/storagevolumes.py |  2 +-
>   tests/test_rest.py                 | 16 ++++++++--------
>   2 files changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/src/kimchi/model/storagevolumes.py b/src/kimchi/model/storagevolumes.py
> index dc807e4..e88c2cb 100644
> --- a/src/kimchi/model/storagevolumes.py
> +++ b/src/kimchi/model/storagevolumes.py
> @@ -530,7 +530,7 @@ class IsoVolumesModel(object):
>               for volume in volumes:
>                   res = self.storagevolume.lookup(pool_name,
>                                                   volume.decode("utf-8"))
> -                if res['format'] == 'iso':
> +                if res['format'] == 'iso' and res['bootable']:
>                       res['name'] = '%s' % volume
>                       iso_volumes.append(res)
>           return iso_volumes
> diff --git a/tests/test_rest.py b/tests/test_rest.py
> index 914b602..9e5988b 100644
> --- a/tests/test_rest.py
> +++ b/tests/test_rest.py
> @@ -61,13 +61,14 @@ def setUpModule():
>
>       # Create fake ISO to do the tests
>       iso_gen.construct_fake_iso(fake_iso, True, '12.04', 'ubuntu')
> -
> +    iso_gen.construct_fake_iso("/var/lib/libvirt/images/fedora.iso", True,
> +                               "17", "fedora")
>
>   def tearDownModule():
>       test_server.stop()
>       os.unlink('/tmp/obj-store-test')
>       os.unlink(fake_iso)
> -
> +    os.unlink("/var/lib/libvirt/images/fedora.iso")
>
>   class RestTests(unittest.TestCase):
>       def _async_op(self, cb, opaque):
> @@ -926,9 +927,9 @@ class RestTests(unittest.TestCase):
>                             storagevolume['path'])

The first lines of this test are:

     def test_iso_scan_shallow(self):
         # fake environment preparation
self._create_pool('pool-3')
         self.request('/storagepools/pool-3/activate', '{}', 'POST')
         params = {'name': 'fedora.iso',
                   'capacity': 1073741824,  # 1 GiB
                   'type': 'file',
                   'format': 'iso'}
         task_info = model.storagevolumes_create('pool-3', params)
         wait_task(self._task_lookup, task_info['id'])

Which means a volume fedora.iso will be created on pool-3.
I think it is the same you did by calling iso_gen.contruct_fake_iso()

So you can remove the volume creation step here.

>           self.assertEquals(1073741824, storagevolume['capacity'])  # 1 GiB
>           self.assertEquals(0, storagevolume['allocation'])
> -        self.assertEquals('unknown', storagevolume['os_version'])
> -        self.assertEquals('unknown', storagevolume['os_distro'])
> -        self.assertEquals(False, storagevolume['bootable'])
> +        self.assertEquals('17', storagevolume['os_version'])
> +        self.assertEquals('fedora', storagevolume['os_distro'])
> +        self.assertEquals(True, storagevolume['bootable'])
>
>           # Create a template
>           # In real model os distro/version can be omitted
> @@ -943,8 +944,8 @@ class RestTests(unittest.TestCase):
>           # Verify the template
>           t = json.loads(self.request('/templates/test').read())
>           self.assertEquals('test', t['name'])
> -        self.assertEquals('unknown', t['os_distro'])
> -        self.assertEquals('unknown', t['os_version'])
> +        self.assertEquals('fedora', t['os_distro'])
> +        self.assertEquals('17', t['os_version'])
>           self.assertEquals(get_template_default('old', 'memory'), t['memory'])
>
>           # Deactivate or destroy scan pool return 405
> @@ -1187,7 +1188,6 @@ class RestTests(unittest.TestCase):
>           resp = self.request('%s/fedora-fake' % base_uri, '{}', 'DELETE')
>           self.assertEquals(204, resp.status)
>
> -
>   class HttpsRestTests(RestTests):
>       """
>       Run all of the same tests as above, but use https instead




More information about the Kimchi-devel mailing list