Example #1
0
    def test_create_instance_snapshot(self):
        server = self.servers.first()

        api.server_get(IsA(http.HttpRequest), server.id).AndReturn(server)
        api.snapshot_create(IsA(http.HttpRequest), server.id,
                            "snapshot1").AndReturn(self.snapshots.first())

        api.snapshot_list_detailed(IsA(http.HttpRequest),
                                   marker=None).AndReturn([[], False])
        api.image_list_detailed(IsA(http.HttpRequest),
                                marker=None).AndReturn([[], False])
        api.volume_snapshot_list(IsA(http.HttpRequest)).AndReturn([])

        self.mox.ReplayAll()

        formData = {
            'instance_id': server.id,
            'method': 'CreateSnapshot',
            'name': 'snapshot1'
        }
        url = reverse('horizon:project:images_and_snapshots:snapshots:create',
                      args=[server.id])
        redir_url = reverse('horizon:project:images_and_snapshots:index')
        res = self.client.post(url, formData)
        self.assertRedirects(res, redir_url)
Example #2
0
    def test_create_instance_snapshot(self):
        server = self.servers.first()

        api.server_get(IsA(http.HttpRequest), server.id).AndReturn(server)
        api.snapshot_create(IsA(http.HttpRequest), server.id, "snapshot1").AndReturn(self.snapshots.first())

        api.snapshot_list_detailed(IsA(http.HttpRequest), marker=None).AndReturn([[], False])
        api.image_list_detailed(IsA(http.HttpRequest), marker=None).AndReturn([[], False])
        api.volume_snapshot_list(IsA(http.HttpRequest)).AndReturn([])

        self.mox.ReplayAll()

        formData = {"instance_id": server.id, "method": "CreateSnapshot", "name": "snapshot1"}
        url = reverse("horizon:project:images_and_snapshots:snapshots:create", args=[server.id])
        redir_url = reverse("horizon:project:images_and_snapshots:index")
        res = self.client.post(url, formData)
        self.assertRedirects(res, redir_url)
Example #3
0
    def test_create_snapshot_post_exception(self):
        server = self.servers.first()
        snapshot = self.snapshots.first()

        self.mox.StubOutWithMock(api, 'server_get')
        self.mox.StubOutWithMock(api, 'snapshot_create')
        api.snapshot_create(IsA(http.HttpRequest), server.id, snapshot.name) \
                            .AndRaise(self.exceptions.nova)
        self.mox.ReplayAll()

        formData = {'method': 'CreateSnapshot',
                    'tenant_id': self.tenant.id,
                    'instance_id': server.id,
                    'name': snapshot.name}
        url = reverse('horizon:project:images_and_snapshots:snapshots:create',
                      args=[server.id])
        res = self.client.post(url, formData)
        redirect = reverse("horizon:project:instances:index")
        self.assertRedirectsNoFollow(res, redirect)
Example #4
0
    def test_create_snapshot_post_exception(self):
        server = self.servers.first()
        snapshot = self.snapshots.first()

        self.mox.StubOutWithMock(api, 'server_get')
        self.mox.StubOutWithMock(api, 'snapshot_create')
        api.snapshot_create(IsA(http.HttpRequest), server.id, snapshot.name) \
                            .AndRaise(self.exceptions.nova)
        self.mox.ReplayAll()

        formData = {
            'method': 'CreateSnapshot',
            'tenant_id': self.tenant.id,
            'instance_id': server.id,
            'name': snapshot.name
        }
        url = reverse('horizon:project:images_and_snapshots:snapshots:create',
                      args=[server.id])
        res = self.client.post(url, formData)
        redirect = reverse("horizon:project:instances:index")
        self.assertRedirectsNoFollow(res, redirect)
Example #5
0
 def handle(self, request, data):
     try:
         snapshot = api.snapshot_create(request,
                                        data['instance_id'],
                                        data['name'])
         # NOTE(gabriel): This API call is only to display a pretty name.
         instance = api.server_get(request, data['instance_id'])
         vals = {"name": data['name'], "inst": instance.name}
         messages.success(request, _('Snapshot "%(name)s" created for '
                                     'instance "%(inst)s"') % vals)
         return snapshot
     except:
         redirect = reverse("horizon:project:instances:index")
         exceptions.handle(request,
                           _('Unable to create snapshot.'),
                           redirect=redirect)
Example #6
0
 def handle(self, request, data):
     try:
         snapshot = api.snapshot_create(request,
                                        data['instance_id'],
                                        data['name'])
         # NOTE(gabriel): This API call is only to display a pretty name.
         instance = api.server_get(request, data['instance_id'])
         vals = {"name": data['name'], "inst": instance.name}
         messages.success(request, _('Snapshot "%(name)s" created for '
                                     'instance "%(inst)s"') % vals)
         return snapshot
     except:
         redirect = reverse("horizon:project:instances:index")
         exceptions.handle(request,
                           _('Unable to create snapshot.'),
                           redirect=redirect)