def copy(request, tenant_id, container_name, object_name): containers = \ [(c.unquote_name, c.unquote_name) for c in api.swift_get_containers( request, request.session.get('storage_url', None)) ] form, handled = CopyObject.maybe_handle(request, containers=containers) container_name_unquoted = unquote(container_name) object_name_unquoted = unquote(object_name) if handled: return handled form.fields['new_container_name'].initial = container_name_unquoted form.fields['orig_container_name'].initial = container_name_unquoted form.fields['orig_object_name'].initial = object_name_unquoted return render_to_response( 'django_openstack/dash/objects/copy.html', { 'container_name': container_name, 'container_name_unquoted': container_name_unquoted, 'object_name': object_name, 'object_name_unquoted': object_name_unquoted, 'copy_form': form }, context_instance=template.RequestContext(request))
def test_index(self): self.mox.StubOutWithMock(api, 'swift_get_containers') api.swift_get_containers( IsA(http.HttpRequest)).AndReturn([self.container]) self.mox.ReplayAll() res = self.client.get(reverse('dash_containers', args=['tenant'])) self.assertTemplateUsed(res, 'dash_containers.html') self.assertIn('containers', res.context) containers = res.context['containers'] self.assertEqual(len(containers), 1) self.assertEqual(containers[0].name, 'containerName') self.mox.VerifyAll()
def test_index(self): self.mox.StubOutWithMock(api, 'swift_get_containers') api.swift_get_containers(IsA(http.HttpRequest)).AndReturn( [self.container]) self.mox.ReplayAll() res = self.client.get(reverse('dash_containers', args=['tenant'])) self.assertTemplateUsed(res, 'django_openstack/dash/containers/index.html') self.assertIn('containers', res.context) containers = res.context['containers'] self.assertEqual(len(containers), 1) self.assertEqual(containers[0].name, 'containerName') self.mox.VerifyAll()
def test_copy_index(self): OBJECT_NAME = 'objectName' container = self.mox.CreateMock(api.Container) container.name = self.CONTAINER_NAME self.mox.StubOutWithMock(api, 'swift_get_containers') api.swift_get_containers(IsA(http.HttpRequest)).AndReturn([container]) self.mox.ReplayAll() res = self.client.get( reverse('dash_object_copy', args=[self.TEST_TENANT, self.CONTAINER_NAME, OBJECT_NAME])) self.assertTemplateUsed(res, 'django_openstack/dash/objects/copy.html') self.mox.VerifyAll()
def test_copy_index(self): OBJECT_NAME = 'objectName' container = self.mox.CreateMock(api.Container) container.name = self.CONTAINER_NAME self.mox.StubOutWithMock(api, 'swift_get_containers') api.swift_get_containers( IsA(http.HttpRequest)).AndReturn([container]) self.mox.ReplayAll() res = self.client.get(reverse('dash_object_copy', args=[self.TEST_TENANT, self.CONTAINER_NAME, OBJECT_NAME])) self.assertTemplateUsed(res, 'dash_object_copy.html') self.mox.VerifyAll()
def index(request, tenant_id): delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled containers = api.swift_get_containers(request) return shortcuts.render_to_response('dash_containers.html', { 'containers': containers, 'delete_form': delete_form, }, context_instance=template.RequestContext(request))
def test_copy(self): NEW_CONTAINER_NAME = self.CONTAINER_NAME NEW_OBJECT_NAME = 'newObjectName' ORIG_CONTAINER_NAME = 'origContainerName' ORIG_OBJECT_NAME = 'origObjectName' formData = { 'method': 'CopyObject', 'new_container_name': NEW_CONTAINER_NAME, 'new_object_name': NEW_OBJECT_NAME, 'orig_container_name': ORIG_CONTAINER_NAME, 'orig_object_name': ORIG_OBJECT_NAME } container = self.mox.CreateMock(api.Container) container.name = self.CONTAINER_NAME self.mox.StubOutWithMock(api, 'swift_get_containers') api.swift_get_containers(IsA(http.HttpRequest)).AndReturn([container]) self.mox.StubOutWithMock(api, 'swift_copy_object') api.swift_copy_object(IsA(http.HttpRequest), ORIG_CONTAINER_NAME, ORIG_OBJECT_NAME, NEW_CONTAINER_NAME, NEW_OBJECT_NAME) self.mox.ReplayAll() res = self.client.post( reverse( 'dash_object_copy', args=[self.TEST_TENANT, ORIG_CONTAINER_NAME, ORIG_OBJECT_NAME]), formData) self.assertRedirectsNoFollow( res, reverse( 'dash_object_copy', args=[self.TEST_TENANT, ORIG_CONTAINER_NAME, ORIG_OBJECT_NAME])) self.mox.VerifyAll()
def index(request, tenant_id): delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled containers = api.swift_get_containers(request) return shortcuts.render_to_response( 'django_openstack/dash/containers/index.html', { 'containers': containers, 'delete_form': delete_form, }, context_instance=template.RequestContext(request))
def index(request, tenant_id): delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled containers = [] try: containers = api.swift_get_containers(request) except Exception, e: msg = "Unable to retrieve containers from swift: %s" % str(e) LOG.exception(msg) messages.error(request, msg)
def index(request, tenant_id): delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled containers = [] try: containers = api.swift_get_containers(request) except Exception, e: msg = "Unable to retrieve containers from swift: %s" % str(e) LOG.exception(msg) messages.error(request, msg)
def test_copy(self): NEW_CONTAINER_NAME = self.CONTAINER_NAME NEW_OBJECT_NAME = 'newObjectName' ORIG_CONTAINER_NAME = 'origContainerName' ORIG_OBJECT_NAME = 'origObjectName' formData = {'method': 'CopyObject', 'new_container_name': NEW_CONTAINER_NAME, 'new_object_name': NEW_OBJECT_NAME, 'orig_container_name': ORIG_CONTAINER_NAME, 'orig_object_name': ORIG_OBJECT_NAME} container = self.mox.CreateMock(api.Container) container.name = self.CONTAINER_NAME self.mox.StubOutWithMock(api, 'swift_get_containers') api.swift_get_containers( IsA(http.HttpRequest)).AndReturn([container]) self.mox.StubOutWithMock(api, 'swift_copy_object') api.swift_copy_object(IsA(http.HttpRequest), ORIG_CONTAINER_NAME, ORIG_OBJECT_NAME, NEW_CONTAINER_NAME, NEW_OBJECT_NAME) self.mox.ReplayAll() res = self.client.post(reverse('dash_object_copy', args=[self.TEST_TENANT, ORIG_CONTAINER_NAME, ORIG_OBJECT_NAME]), formData) self.assertRedirectsNoFollow(res, reverse('dash_object_copy', args=[self.TEST_TENANT, ORIG_CONTAINER_NAME, ORIG_OBJECT_NAME])) self.mox.VerifyAll()
def index(request, tenant_id): marker = request.GET.get('marker', None) delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled containers = api.swift_get_containers(request, marker=marker) return shortcuts.render_to_response( 'django_openstack/dash/containers/index.html', { 'containers': containers, 'delete_form': delete_form, }, context_instance=template.RequestContext(request))
def copy(request, tenant_id, container_name, object_name): containers = [(c.name, c.name) for c in api.swift_get_containers(request)] form, handled = CopyObject.maybe_handle(request, containers=containers) if handled: return handled form.fields["new_container_name"].initial = container_name form.fields["orig_container_name"].initial = container_name form.fields["orig_object_name"].initial = object_name return render_to_response( "django_openstack/dash/objects/copy.html", {"container_name": container_name, "object_name": object_name, "copy_form": form}, context_instance=template.RequestContext(request), )
def test_swift_get_containers(self): containers = (TEST_RETURN, TEST_RETURN + "2") swift_api = self.stub_swift_api() swift_api.get_all_containers().AndReturn(containers) self.mox.ReplayAll() ret_val = api.swift_get_containers(self.request) self.assertEqual(len(ret_val), len(containers)) for container in ret_val: self.assertIsInstance(container, api.Container) self.assertIn(container._apiresource, containers) self.mox.VerifyAll()
def handle(self, request, data): storage_url = data['storage_url'] storage_urls = data['storage_urls'] if storage_url: target_url = storage_url elif storage_urls: target_url = storage_urls containers = [] try: containers = api.swift_get_containers(request, target_url) request.session['storage_url'] = target_url if not request.session.get('storage_url_list', None): request.session['storage_url_list'] = set() request.session['storage_url_list'].add(target_url) except Exception, e: msg = "Unable to retrieve containers from swift: %s" % str(e) LOG.exception(msg) messages.error(request, msg) return shortcuts.redirect('dash_containers' , request.user.tenant_id)
def handle(self, request, data): storage_url = data['storage_url'] storage_urls = data['storage_urls'] if storage_url: target_url = storage_url elif storage_urls: target_url = storage_urls containers = [] try: containers = api.swift_get_containers(request, target_url) request.session['storage_url'] = target_url if not request.session.get('storage_url_list', None): request.session['storage_url_list'] = set() request.session['storage_url_list'].add(target_url) except Exception, e: msg = "Unable to retrieve containers from swift: %s" % str(e) LOG.exception(msg) messages.error(request, msg) return shortcuts.redirect('dash_containers', request.user.tenant_id)
def copy(request, tenant_id, container_name, object_name): containers = \ [(c.name, c.name) for c in api.swift_get_containers( request)] form, handled = CopyObject.maybe_handle(request, containers=containers) if handled: return handled form.fields['new_container_name'].initial = container_name form.fields['orig_container_name'].initial = container_name form.fields['orig_object_name'].initial = object_name return render_to_response( 'django_openstack/dash/objects/copy.html', {'container_name': container_name, 'object_name': object_name, 'copy_form': form}, context_instance=template.RequestContext(request))
def _index(request, tenant_id, expire_session): delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled if expire_session and request.session.has_key('storage_url'): print 'removing session' del request.session['storage_url'] storage_urls = request.session.get('storage_url_list', []) storage_url = request.session.get('storage_url', None) storage_url_form, handled = OtherContainer.maybe_handle( request, storage_urls=storage_urls, storage_url=storage_url) if handled: return handled containers = [] try: containers = api.swift_get_containers(request, storage_url) except Exception, e: msg = "Unable to retrieve containers from swift: %s" % str(e) LOG.exception(msg) messages.error(request, msg)
def copy(request, tenant_id, container_name, object_name): containers = \ [(c.unquote_name, c.unquote_name) for c in api.swift_get_containers( request, request.session.get('storage_url', None)) ] form, handled = CopyObject.maybe_handle(request, containers=containers) container_name_unquoted = unquote(container_name) object_name_unquoted = unquote(object_name) if handled: return handled form.fields['new_container_name'].initial = container_name_unquoted form.fields['orig_container_name'].initial = container_name_unquoted form.fields['orig_object_name'].initial = object_name_unquoted return render_to_response( 'django_openstack/dash/objects/copy.html', {'container_name': container_name, 'container_name_unquoted' : container_name_unquoted, 'object_name': object_name, 'object_name_unquoted' : object_name_unquoted, 'copy_form': form}, context_instance=template.RequestContext(request))
def _index(request, tenant_id, expire_session): delete_form, handled = DeleteContainer.maybe_handle(request) if handled: return handled if expire_session and request.session.has_key('storage_url'): print 'removing session' del request.session['storage_url'] storage_urls = request.session.get('storage_url_list', []) storage_url = request.session.get('storage_url', None) storage_url_form, handled = OtherContainer.maybe_handle(request, storage_urls=storage_urls, storage_url=storage_url) if handled: return handled containers = [] try: containers = api.swift_get_containers(request, storage_url) except Exception, e: msg = "Unable to retrieve containers from swift: %s" % str(e) LOG.exception(msg) messages.error(request, msg)