def _test_index_paginated(self, marker, sort_dir, volumes, url, has_more, has_prev): vol_snaps = self.cinder_volume_snapshots.list() server = self.servers.first() cinder.volume_list_paged(IsA(http.HttpRequest), sort_dir=sort_dir, marker=marker, paginate=True, search_opts={'all_tenants': True}) \ .AndReturn([volumes, has_more, has_prev]) api.cinder.volume_snapshot_list( IsA(http.HttpRequest), search_opts=None).AndReturn(vol_snaps) api.nova.server_list(IsA(http.HttpRequest), search_opts={ 'all_tenants': True}, detailed=False) \ .AndReturn([self.servers.list(), False]) api.nova.server_get(IsA(http.HttpRequest), server.id).AndReturn(server) keystone.tenant_list(IsA(http.HttpRequest)) \ .AndReturn([self.tenants.list(), False]) self.mox.ReplayAll() res = self.client.get(urlunquote(url)) self.assertTemplateUsed(res, 'horizon/common/_data_table_view.html') self.assertEqual(res.status_code, 200) self.mox.UnsetStubs() return res
def _test_index(self, instanceless_volumes=False): volumes = self.cinder_volumes.list() if instanceless_volumes: for volume in volumes: volume.attachments = [] cinder.volume_list_paged(IsA(http.HttpRequest), sort_dir="desc", marker=None, paginate=True, search_opts={'all_tenants': True})\ .AndReturn([volumes, False, False]) cinder.volume_snapshot_list(IsA(http.HttpRequest), search_opts={ 'all_tenants': True }).AndReturn([]) if not instanceless_volumes: api.nova.server_list(IsA(http.HttpRequest), search_opts={ 'all_tenants': True}) \ .AndReturn([self.servers.list(), False]) keystone.tenant_list(IsA(http.HttpRequest)) \ .AndReturn([self.tenants.list(), False]) self.mox.ReplayAll() res = self.client.get(INDEX_URL) self.assertTemplateUsed(res, 'admin/volumes/index.html') volumes = res.context['volumes_table'].data self.assertItemsEqual(volumes, self.cinder_volumes.list())
def _test_index(self, instanceless_volumes=False): volumes = self.cinder_volumes.list() if instanceless_volumes: for volume in volumes: volume.attachments = [] cinder.volume_list_paged(IsA(http.HttpRequest), sort_dir="desc", marker=None, paginate=True, search_opts={'all_tenants': True})\ .AndReturn([volumes, False, False]) cinder.volume_snapshot_list(IsA(http.HttpRequest), search_opts={ 'all_tenants': True}).AndReturn([]) if not instanceless_volumes: api.nova.server_list(IsA(http.HttpRequest), search_opts={ 'all_tenants': True}) \ .AndReturn([self.servers.list(), False]) keystone.tenant_list(IsA(http.HttpRequest)) \ .AndReturn([self.tenants.list(), False]) self.mox.ReplayAll() res = self.client.get(INDEX_URL) self.assertTemplateUsed(res, 'admin/volumes/index.html') volumes = res.context['volumes_table'].data self.assertItemsEqual(volumes, self.cinder_volumes.list())
def test_index(self): cinder.volume_list_paged( IsA(http.HttpRequest), sort_dir="desc", marker=None, paginate=True, search_opts={"all_tenants": True} ).AndReturn([self.cinder_volumes.list(), False, False]) cinder.volume_snapshot_list(IsA(http.HttpRequest), search_opts={"all_tenants": True}).AndReturn([]) api.nova.server_list(IsA(http.HttpRequest), search_opts={"all_tenants": True}).AndReturn( [self.servers.list(), False] ) keystone.tenant_list(IsA(http.HttpRequest)).AndReturn([self.tenants.list(), False]) self.mox.ReplayAll() res = self.client.get(INDEX_URL) self.assertTemplateUsed(res, "admin/volumes/index.html") volumes = res.context["volumes_table"].data self.assertItemsEqual(volumes, self.cinder_volumes.list())
def _test_index_paginated(self, marker, sort_dir, volumes, url, has_more, has_prev): cinder.volume_list_paged( IsA(http.HttpRequest), sort_dir=sort_dir, marker=marker, paginate=True, search_opts={"all_tenants": True} ).AndReturn([volumes, has_more, has_prev]) api.nova.server_list(IsA(http.HttpRequest), search_opts={"all_tenants": True}).AndReturn( [self.servers.list(), False] ) keystone.tenant_list(IsA(http.HttpRequest)).AndReturn([self.tenants.list(), False]) self.mox.ReplayAll() res = self.client.get(url) self.assertTemplateUsed(res, "admin/volumes/index.html") self.assertEqual(res.status_code, 200) self.mox.UnsetStubs() return res
def _get_volumes(self, search_opts=None): try: marker, sort_dir = self._get_marker() volumes, self._has_more_data, self._has_prev_data = \ cinder.volume_list_paged(self.request, marker=marker, search_opts=search_opts, sort_dir=sort_dir, paginate=True) return volumes except Exception: exceptions.handle(self.request, _('Unable to retrieve volume list.')) return []
def _test_index_paginated(self, marker, sort_dir, volumes, url, has_more, has_prev): cinder.volume_list_paged(IsA(http.HttpRequest), sort_dir=sort_dir, marker=marker, paginate=True, search_opts={'all_tenants': True}) \ .AndReturn([volumes, has_more, has_prev]) api.nova.server_list(IsA(http.HttpRequest), search_opts={ 'all_tenants': True}) \ .AndReturn([self.servers.list(), False]) keystone.tenant_list(IsA(http.HttpRequest)) \ .AndReturn([self.tenants.list(), False]) self.mox.ReplayAll() res = self.client.get(url) self.assertTemplateUsed(res, 'admin/volumes/index.html') self.assertEqual(res.status_code, 200) self.mox.UnsetStubs() return res
def _get_volumes(self, search_opts=None): try: marker, sort_dir = self._get_marker() volumes, self._has_more_data, self._has_prev_data = \ cinder.volume_list_paged(self.request, marker=marker, search_opts=search_opts, sort_dir=sort_dir, paginate=True) if sort_dir == "asc": volumes.reverse() return volumes except Exception: exceptions.handle(self.request, _('Unable to retrieve volume list.')) return []