[Kimchi-devel] [PATCH v2 2/4] Update (mock)model to generate proper JSON
Sheldon
shaohef at linux.vnet.ibm.com
Fri Feb 21 02:43:08 UTC 2014
Reviewed-by: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
On 02/21/2014 09:59 AM, Adam King wrote:
> Update the model and the mock model to generate proper JSON.
> Update the automated tests to validate against the new data format.
>
> Signed-off-by: Adam King <rak at linux.vnet.ibm.com>
> ---
> src/kimchi/mockmodel.py | 11 +++++++----
> src/kimchi/model/vms.py | 2 +-
> tests/test_mockmodel.py | 2 +-
> tests/test_model.py | 2 +-
> 4 files changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/src/kimchi/mockmodel.py b/src/kimchi/mockmodel.py
> index ba9859b..6a44bf7 100644
> --- a/src/kimchi/mockmodel.py
> +++ b/src/kimchi/mockmodel.py
> @@ -921,11 +921,14 @@ class MockVM(object):
> ifaces = [MockVMIface(net) for net in self.networks]
> self.storagedevices = {}
> self.ifaces = dict([(iface.info['mac'], iface) for iface in ifaces])
> +
> + stats = {'cpu_utilization': 20,
> + 'net_throughput': 35,
> + 'net_throughput_peak': 100,
> + 'io_throughput': 45,
> + 'io_throughput_peak': 100}
> self.info = {'state': 'shutoff',
> - 'stats': "{'cpu_utilization': 20, 'net_throughput' : 35, \
> - 'net_throughput_peak': 100, \
> - 'io_throughput': 45, \
> - 'io_throughput_peak': 100}",
> + 'stats': stats,
> 'uuid': self.uuid,
> 'memory': template_info['memory'],
> 'cpus': template_info['cpus'],
> diff --git a/src/kimchi/model/vms.py b/src/kimchi/model/vms.py
> index b482e80..9da6688 100644
> --- a/src/kimchi/model/vms.py
> +++ b/src/kimchi/model/vms.py
> @@ -306,7 +306,7 @@ class VMModel(object):
> res['io_throughput_peak'] = vm_stats.get('max_disk_io', 100)
>
> return {'state': state,
> - 'stats': str(res),
> + 'stats': res,
> 'uuid': dom.UUIDString(),
> 'memory': info[2] >> 10,
> 'cpus': info[3],
> diff --git a/tests/test_mockmodel.py b/tests/test_mockmodel.py
> index 4ac08dd..ab5eb59 100644
> --- a/tests/test_mockmodel.py
> +++ b/tests/test_mockmodel.py
> @@ -149,7 +149,7 @@ class MockModelTests(unittest.TestCase):
> self.assertEquals(1024, info['memory'])
> self.assertEquals(1, info['cpus'])
> self.assertEquals('images/icon-vm.png', info['icon'])
> - self.assertEquals(stats_keys, set(eval(info['stats']).keys()))
> + self.assertEquals(stats_keys, set(info['stats'].keys()))
> self.assertEquals('vnc', info['graphics']['type'])
> self.assertEquals('0.0.0.0', info['graphics']['listen'])
>
> diff --git a/tests/test_model.py b/tests/test_model.py
> index 298a39e..d3315a0 100644
> --- a/tests/test_model.py
> +++ b/tests/test_model.py
> @@ -67,7 +67,7 @@ class ModelTests(unittest.TestCase):
> self.assertEquals(2048, info['memory'])
> self.assertEquals(2, info['cpus'])
> self.assertEquals(None, info['icon'])
> - self.assertEquals(stats_keys, set(eval(info['stats']).keys()))
> + self.assertEquals(stats_keys, set(info['stats'].keys()))
> self.assertRaises(NotFoundError, inst.vm_lookup, 'nosuchvm')
>
> @unittest.skipUnless(utils.running_as_root(), 'Must be run as root')
--
Thanks and best regards!
Sheldon Feng(冯少合)<shaohef at linux.vnet.ibm.com>
IBM Linux Technology Center
More information about the Kimchi-devel
mailing list