Tests run both on update and template creation
Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com>
---
tests/test_rest.py | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 55 insertions(+), 1 deletion(-)
diff --git a/tests/test_rest.py b/tests/test_rest.py
index 852e4bd..a704283 100644
--- a/tests/test_rest.py
+++ b/tests/test_rest.py
@@ -151,8 +151,17 @@ class RestTests(unittest.TestCase):
self.assertEquals(200, resp.status)
def test_edit_vm(self):
+ disks = [
+ {'index': 0, 'size': 10, 'format': 'qcow2',
+ 'pool': {"name": "/plugins/kimchi/storagepools/default-pool"}},
+ {'index': 1, 'size': 10, 'format': 'qcow2', 'io': 'threads',
+ 'cache': 'unsafe', 'bus': 'scsi',
+ 'pool': {"name": "/plugins/kimchi/storagepools/default-pool"}}]
+
req = json.dumps({'name': 'test',
- 'source_media': {'type': 'disk', 'path': fake_iso}})
+ 'source_media': {'type': 'disk', 'path': fake_iso},
+ 'disks': disks})
+
resp = self.request('/plugins/kimchi/templates', req, 'POST')
self.assertEquals(201, resp.status)
@@ -166,6 +175,23 @@ class RestTests(unittest.TestCase):
vm = json.loads(self.request('/plugins/kimchi/vms/vm-1').read())
self.assertEquals('vm-1', vm['name'])
+ # test vm storage
+ storages = json.loads(
+ self.request('/plugins/kimchi/vms/vm-1/storages').read())
+ self.assertEquals(len(storages), 3)
+
+ # test sdb disk
+ resp = self.request('/plugins/kimchi/vms/vm-1/storages/sdb', 'GET')
+ self.assertEquals(resp.status, 200)
+ scsi_disk = json.loads(resp.read())
+ self.assertEquals(scsi_disk['cache'], 'unsafe')
+ self.assertEquals(scsi_disk['io'], 'threads')
+
+ # remove sdb disk
+ resp = self.request('/plugins/kimchi/vms/vm-1/storages/sdb',
+ '', 'DELETE')
+ self.assertEquals(resp.status, 204)
+
req = json.dumps({'cpu_info': {'maxvcpus': 5, 'vcpus': 3}})
resp = self.request('/plugins/kimchi/vms/vm-1', req, 'PUT')
self.assertEquals(200, resp.status)
@@ -330,6 +356,34 @@ class RestTests(unittest.TestCase):
resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd', req, 'PUT')
self.assertEquals(400, resp.status)
+ # add volume as scsi
+ mock_base = '/tmp/mock.img'
+ os.system("qemu-img create -f qcow2 %s 100M" % mock_base)
+ req = json.dumps({'type': 'disk',
+ 'path': mock_base,
+ 'bus': 'scsi'})
+ resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd/storages',
+ req, 'POST')
+ self.assertEquals(201, resp.status)
+ resp = json.loads(resp.read())
+ self.assertEquals("scsi", resp["bus"])
+ dev = resp["dev"]
+
+ # change io/cache
+ req = json.dumps({"io": "threads", "cache": "unsafe"})
+ resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd/storages/' +
+ str(dev), req, 'PUT')
+ self.assertEquals(200, resp.status)
+ resp = json.loads(resp.read())
+ self.assertEquals('threads', resp['io'])
+ self.assertEquals('unsafe', resp['cache'])
+
+ # remove disk
+ resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd/storages/' +
+ str(dev), req, 'DELETE')
+ os.system("rm -rf " + mock_base)
+ self.assertEquals(204, resp.status)
+
def test_vm_lifecycle(self):
# Create a Template
req = json.dumps({'name': 'test',
--
2.9.3
_______________________________________________
Kimchi-devel mailing list
Kimchi-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/kimchi-devel
On 03/10/2017 08:19 PM, Ramon Medeiros wrote: > Tests run both on update and template creation > > Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com> > --- > tests/test_rest.py | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 55 insertions(+), 1 deletion(-) > > diff --git a/tests/test_rest.py b/tests/test_rest.py > index 852e4bd..a704283 100644 > --- a/tests/test_rest.py > +++ b/tests/test_rest.py > @@ -151,8 +151,17 @@ class RestTests(unittest.TestCase): > self.assertEquals(200, resp.status) > > def test_edit_vm(self): > + disks = [ > + {'index': 0, 'size': 10, 'format': 'qcow2', > + 'pool': {"name": "/plugins/kimchi/storagepools/default-pool"}}, > + {'index': 1, 'size': 10, 'format': 'qcow2', 'io': 'threads', > + 'cache': 'unsafe', 'bus': 'scsi', > + 'pool': {"name": "/plugins/kimchi/storagepools/default-pool"}}] > + > req = json.dumps({'name': 'test', > - 'source_media': {'type': 'disk', 'path': fake_iso}}) > + 'source_media': {'type': 'disk', 'path': fake_iso}, > + 'disks': disks}) > + > resp = self.request('/plugins/kimchi/templates', req, 'POST') > self.assertEquals(201, resp.status) > Please, add tests to update an existing Template to change io, cache and bus disk information. > @@ -166,6 +175,23 @@ class RestTests(unittest.TestCase): > vm = json.loads(self.request('/plugins/kimchi/vms/vm-1').read()) > self.assertEquals('vm-1', vm['name']) > > + # test vm storage > + storages = json.loads( > + self.request('/plugins/kimchi/vms/vm-1/storages').read()) > + self.assertEquals(len(storages), 3) > + > + # test sdb disk > + resp = self.request('/plugins/kimchi/vms/vm-1/storages/sdb', 'GET') > + self.assertEquals(resp.status, 200) > + scsi_disk = json.loads(resp.read()) > + self.assertEquals(scsi_disk['cache'], 'unsafe') > + self.assertEquals(scsi_disk['io'], 'threads') > + > + # remove sdb disk > + resp = self.request('/plugins/kimchi/vms/vm-1/storages/sdb', > + '', 'DELETE') > + self.assertEquals(resp.status, 204) > + > req = json.dumps({'cpu_info': {'maxvcpus': 5, 'vcpus': 3}}) > resp = self.request('/plugins/kimchi/vms/vm-1', req, 'PUT') > self.assertEquals(200, resp.status) > @@ -330,6 +356,34 @@ class RestTests(unittest.TestCase): > resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd', req, 'PUT') > self.assertEquals(400, resp.status) > > + # add volume as scsi > + mock_base = '/tmp/mock.img' > + os.system("qemu-img create -f qcow2 %s 100M" % mock_base) > + req = json.dumps({'type': 'disk', > + 'path': mock_base, > + 'bus': 'scsi'}) > + resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd/storages', > + req, 'POST') > + self.assertEquals(201, resp.status) > + resp = json.loads(resp.read()) > + self.assertEquals("scsi", resp["bus"]) > + dev = resp["dev"] > + > + # change io/cache > + req = json.dumps({"io": "threads", "cache": "unsafe"}) > + resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd/storages/' + > + str(dev), req, 'PUT') > + self.assertEquals(200, resp.status) > + resp = json.loads(resp.read()) > + self.assertEquals('threads', resp['io']) > + self.assertEquals('unsafe', resp['cache']) > + > + # remove disk > + resp = self.request('/plugins/kimchi/vms/∨м-црdαtеd/storages/' + > + str(dev), req, 'DELETE') > + os.system("rm -rf " + mock_base) > + self.assertEquals(204, resp.status) > + > def test_vm_lifecycle(self): > # Create a Template > req = json.dumps({'name': 'test', _______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
© 2016 - 2024 Red Hat, Inc.