Example #1
0
 def test_list_storagevolumes_none_check(self):
     self.mock.StubOutWithMock(api, "storage_volume_get_all_by_filters")
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg()
     ).AndReturn(None)
     self.mock.ReplayAll()
     request = webob.Request.blank("/v2.0/storagevolumes", base_url="http://localhost:8774/v2.0/")
     request.environ["nova.context"] = self.admin_context
     resp = StorageVolumeController().index(request)
     self.assertEqual(resp.body, '{"storagevolumes": []}', "Return xml string")
Example #2
0
 def test_list_storagevolumes_detail_none_xml(self):
     storagevolumes = None
     self.mock.StubOutWithMock(api, "storage_volume_get_all_by_filters")
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg()
     ).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank("/v2.0/storagevolumes/detail.xml", base_url="http://localhost:8774/v2.0/")
     request.environ["nova.context"] = self.admin_context
     resp = StorageVolumeController().detail(request)
     self.assertNotEqual(resp, None, "Return xml string")
Example #3
0
 def test_list_storagevolumes_json(self):
     storagevolumes = self.get_storagevolume_list()
     self.mock.StubOutWithMock(api, "storage_volume_get_all_by_filters")
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg()
     ).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank("/v2.0/storagevolumes.json", base_url="http://localhost:8774/v2.0/")
     request.environ["nova.context"] = self.admin_context
     resp = StorageVolumeController().index(request)
     self.assertNotEqual(resp, None, "Return json string")
     self.assertEqual(self.expected_index_json, resp.body)
Example #4
0
 def test_list_storagevolumes_none_check(self):
     self.mock.StubOutWithMock(api, 'storage_volume_get_all_by_filters')
     api.storage_volume_get_all_by_filters(mox.IgnoreArg(), mox.IgnoreArg(),
                                           mox.IgnoreArg(),
                                           mox.IgnoreArg()).AndReturn(None)
     self.mock.ReplayAll()
     request = webob.Request.blank('/v2.0/storagevolumes',
                                   base_url='http://localhost:8774/v2.0/')
     request.environ['nova.context'] = self.admin_context
     resp = StorageVolumeController().index(request)
     self.assertEqual(resp.body, '{"storagevolumes": []}',
                      'Return xml string')
Example #5
0
 def test_list_storagevolumes_detail_none_xml(self):
     storagevolumes = None
     self.mock.StubOutWithMock(api, 'storage_volume_get_all_by_filters')
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(),
         mox.IgnoreArg()).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank('/v2.0/storagevolumes/detail.xml',
                                   base_url='http://localhost:8774/v2.0/')
     request.environ['nova.context'] = self.admin_context
     resp = StorageVolumeController().detail(request)
     self.assertNotEqual(resp, None, 'Return xml string')
Example #6
0
 def test_list_limited_storagevolumes_detail_xml(self):
     storagevolumes = self.get_storagevolume_list()
     self.mock.StubOutWithMock(api, "storage_volume_get_all_by_filters")
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg()
     ).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank(
         "/v2.0/storagevolumes/detail.xml?" "limit=1&marker=datastore-111", base_url="http://localhost:8774/v2.0/"
     )
     request.environ["nova.context"] = self.admin_context
     resp = StorageVolumeController().detail(request)
     self.assertEqual(resp.body, self.expected_limited_detail_xml)
Example #7
0
 def test_list_storagevolumes_json(self):
     storagevolumes = self.get_storagevolume_list()
     self.mock.StubOutWithMock(api, 'storage_volume_get_all_by_filters')
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(),
         mox.IgnoreArg()).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank('/v2.0/storagevolumes.json',
                                   base_url='http://localhost:8774/v2.0/')
     request.environ['nova.context'] = self.admin_context
     resp = StorageVolumeController().index(request)
     self.assertNotEqual(resp, None, 'Return json string')
     self.assertEqual(self.expected_index_json, resp.body)
Example #8
0
 def test_list_limited_storagevolumes_detail_xml(self):
     storagevolumes = self.get_storagevolume_list()
     self.mock.StubOutWithMock(api, 'storage_volume_get_all_by_filters')
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg(),
         mox.IgnoreArg()).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank(
         '/v2.0/storagevolumes/detail.xml?'
         'limit=1&marker=datastore-111',
         base_url='http://localhost:8774/v2.0/')
     request.environ['nova.context'] = self.admin_context
     resp = StorageVolumeController().detail(request)
     self.assertEqual(resp.body, self.expected_limited_detail_xml)
 def test_list_storagevolumes_detail_xml(self):
     storagevolumes = self.get_storagevolume_list()
     self.mock.StubOutWithMock(api, 'storage_volume_get_all_by_filters')
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(),
         mox.IgnoreArg(),
         mox.IgnoreArg(),
         mox.IgnoreArg()).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank('/v2.0/storagevolumes/detail.xml',
                                   base_url='http://localhost:8774/v2.0/')
     request.environ['nova.context'] = self.admin_context
     resp = StorageVolumeController().detail(request)
     self.assertEqual(resp.body, self.expected_detail_xml)
 def test_storage_volume_get_all_by_filters_changessince(self):
     # Create StorageVolumes
     vol_ids = ('V1', 'V2', 'V3')
     vol_names = ('name1', 'name2', 'name3')
     for i in range(len(vol_ids)):
         self.__create_volume(id=vol_ids[i], name=vol_names[i])
     created_time = long(time.time() * 1000L)
     # Wait for 1 sec and update second vol and delete third vol
     time.sleep(1)
     second_vol = healthnmon_db_api.storage_volume_get_by_ids(
         self.admin_context, [vol_ids[1]])[0]
     second_vol.name = 'New name'
     healthnmon_db_api.storage_volume_save(self.admin_context, second_vol)
     healthnmon_db_api.storage_volume_delete_by_ids(self.admin_context,
                                                    [vol_ids[2]])
     # Query with filter
     expected_updated_ids = [vol_ids[1], vol_ids[2]]
     filters = {'changes-since': created_time}
     vols = healthnmon_db_api.storage_volume_get_all_by_filters(
         self.admin_context, filters, None, None)
     self.assert_(vols is not None)
     self.assert_(len(vols) == 2)
     for vol in vols:
         self.assert_(vol is not None)
         self.assert_(vol.id in expected_updated_ids)
 def test_list_storagevolumes_json_header(self):
     storagevolumes = self.get_storagevolume_list()
     self.mock.StubOutWithMock(api, 'storage_volume_get_all_by_filters')
     api.storage_volume_get_all_by_filters(
         mox.IgnoreArg(),
         mox.IgnoreArg(),
         mox.IgnoreArg(),
         mox.IgnoreArg()).AndReturn(storagevolumes)
     self.mock.ReplayAll()
     request = webob.Request.blank('/v2.0/storagevolumes',
                                   base_url='http://localhost:8774/v2.0/')
     request.headers['Accept'] = 'application/json'
     request.environ['nova.context'] = self.admin_context
     resp = StorageVolumeController().index(request)
     self.assertNotEqual(resp, None, 'Return json string')
     self.assertEqual(self.expected_index_json, resp.body)
 def test_storage_volume_get_all_by_filters_changessince(self):
     # Create StorageVolumes
     vol_ids = ('V1', 'V2', 'V3')
     vol_names = ('name1', 'name2', 'name3')
     for i in range(len(vol_ids)):
         self.__create_volume(id=vol_ids[i], name=vol_names[i])
     created_time = long(time.time() * 1000L)
     # Wait for 1 sec and update second vol and delete third vol
     time.sleep(1)
     second_vol = healthnmon_db_api.storage_volume_get_by_ids(
         self.admin_context, [vol_ids[1]])[0]
     second_vol.name = 'New name'
     healthnmon_db_api.storage_volume_save(self.admin_context, second_vol)
     healthnmon_db_api.storage_volume_delete_by_ids(
         self.admin_context, [vol_ids[2]])
     # Query with filter
     expected_updated_ids = [vol_ids[1], vol_ids[2]]
     filters = {'changes-since': created_time}
     vols = healthnmon_db_api.storage_volume_get_all_by_filters(
         self.admin_context, filters,
         None, None)
     self.assert_(vols is not None)
     self.assert_(len(vols) == 2)
     for vol in vols:
         self.assert_(vol is not None)
         self.assert_(vol.id in expected_updated_ids)
 def test_storage_volume_get_all_by_filters(self):
     # Create StorageVolumes
     vol_ids = ('V1', 'V2')
     vol_names = ('name1', 'name2')
     for i in range(len(vol_ids)):
         self.__create_volume(id=vol_ids[i], name=vol_names[i])
     # Query with filter
     filters = {'name': vol_names[1]}
     vols = healthnmon_db_api.storage_volume_get_all_by_filters(
         self.admin_context, filters, 'id', DbConstants.ORDER_ASC)
     self.assert_(vols is not None)
     self.assert_(len(vols) == 1)
     self.assert_(vols[0] is not None)
     self.assert_(vols[0].id == vol_ids[1])
 def test_storage_volume_get_all_by_filters(self):
     # Create StorageVolumes
     vol_ids = ('V1', 'V2')
     vol_names = ('name1', 'name2')
     for i in range(len(vol_ids)):
         self.__create_volume(id=vol_ids[i], name=vol_names[i])
     # Query with filter
     filters = {'name': vol_names[1]}
     vols = healthnmon_db_api.storage_volume_get_all_by_filters(
         self.admin_context, filters,
         'id', DbConstants.ORDER_ASC)
     self.assert_(vols is not None)
     self.assert_(len(vols) == 1)
     self.assert_(vols[0] is not None)
     self.assert_(vols[0].id == vol_ids[1])
Example #15
0
def storage_volume_get_all_by_filters(context, filters, sort_key, sort_dir):
    """ This API will make a call to db layer to fetch the list of all the
        StorageVolume objects.
        Parameters:
            context - nova.context.RequestContext object
            filters - dictionary of filters to be applied
                      keys should be fields of StorageVolume model
                      if value is simple value = filter is applied and
                      if value is list or tuple 'IN' filter is applied
                      eg : {'size':1024, 'name':['vol1', 'vol2']} will filter as
                      size = 1024 AND name in ('vol1', 'vol2')
            sort_key - Field on which sorting is to be applied
            sort_dir - asc for Ascending sort direction, desc for descending sort direction
        Returns:
            list of storage volumes that match all filters and sorted with sort_key
    """
    return api.storage_volume_get_all_by_filters(context, filters, sort_key, sort_dir)
Example #16
0
def storage_volume_get_all_by_filters(context, filters, sort_key, sort_dir):
    """ This API will make a call to db layer to fetch the list of all the
        StorageVolume objects.
        Parameters:
            context - nova.context.RequestContext object
            filters - dictionary of filters to be applied
                      keys should be fields of StorageVolume model
                      if value is simple value = filter is applied and
                      if value is list or tuple 'IN' filter is applied
                      eg : {'size':1024, 'name':['vol1', 'vol2']} will filter as
                      size = 1024 AND name in ('vol1', 'vol2')
            sort_key - Field on which sorting is to be applied
            sort_dir - asc for Ascending sort direction, desc for descending sort direction
        Returns:
            list of storage volumes that match all filters and sorted with sort_key
    """
    return api.storage_volume_get_all_by_filters(context, filters, sort_key,
                                                 sort_dir)
 def test_storage_volume_get_all_by_filters_not_deleted(self):
     # Create StorageVolumes
     vol_ids = ('V1', 'V2')
     vol_names = ('name1', 'name2')
     for i in range(len(vol_ids)):
         self.__create_volume(id=vol_ids[i], name=vol_names[i])
     # Delete one vol
     healthnmon_db_api.storage_volume_delete_by_ids(self.admin_context,
                                                    [vol_ids[0]])
     # Query with filter
     filters = {'deleted': 'false'}
     vols = healthnmon_db_api.storage_volume_get_all_by_filters(
         self.admin_context, filters, 'id', DbConstants.ORDER_ASC)
     print "vols::", vols[0].id
     self.assert_(vols is not None)
     self.assert_(len(vols) == 1)
     self.assert_(vols[0] is not None)
     self.assert_(vols[0].id == vol_ids[1])
 def test_storage_volume_get_all_by_filters_not_deleted(self):
     # Create StorageVolumes
     vol_ids = ('V1', 'V2')
     vol_names = ('name1', 'name2')
     for i in range(len(vol_ids)):
         self.__create_volume(id=vol_ids[i], name=vol_names[i])
     # Delete one vol
     healthnmon_db_api.storage_volume_delete_by_ids(
         self.admin_context, [vol_ids[0]])
     # Query with filter
     filters = {'deleted': 'false'}
     vols = healthnmon_db_api.storage_volume_get_all_by_filters(
         self.admin_context, filters,
         'id', DbConstants.ORDER_ASC)
     print "vols::", vols[0].id
     self.assert_(vols is not None)
     self.assert_(len(vols) == 1)
     self.assert_(vols[0] is not None)
     self.assert_(vols[0].id == vol_ids[1])