Ejemplo n.º 1
0
    def test_index(self):
        instance_id = 'i-abcdefgh'

        volume = boto.ec2.volume.Volume()
        volume.id = TEST_VOLUME
        volume.displayName = TEST_VOLUME
        volume.size = 1

        self.mox.StubOutWithMock(self.project, 'get_volumes')
        self.mox.StubOutWithMock(forms, 'get_available_volume_choices')
        self.mox.StubOutWithMock(forms, 'get_instance_choices')
        self.project.get_volumes().AndReturn([])
        forms.get_available_volume_choices(mox.IgnoreArg()).AndReturn(
            self.create_available_volume_choices([volume]))
        forms.get_instance_choices(mox.IgnoreArg()).AndReturn(
            self.create_instance_choices([instance_id]))

        self.mox.ReplayAll()

        response = self.client.get(reverse('nova_volumes',
                                           args=[TEST_PROJECT]))
        self.assertEqual(response.status_code, 200)
        self.assertTemplateUsed(response,
                                'django_openstack/nova/volumes/index.html')
        self.assertEqual(len(response.context['volumes']), 0)

        self.mox.VerifyAll()
Ejemplo n.º 2
0
    def test_attach_post(self):
        volume = boto.ec2.volume.Volume()
        volume.id = TEST_VOLUME
        volume.displayName = TEST_VOLUME
        volume.size = 1

        instance_id = 'i-abcdefgh'
        device = '/dev/vdb'

        self.mox.StubOutWithMock(self.project, 'attach_volume')
        self.mox.StubOutWithMock(forms, 'get_available_volume_choices')
        self.mox.StubOutWithMock(forms, 'get_instance_choices')
        self.project.attach_volume(TEST_VOLUME, instance_id, device) \
                    .AndReturn(True)
        forms.get_available_volume_choices(mox.IgnoreArg()).AndReturn(
            self.create_available_volume_choices([volume]))
        forms.get_instance_choices(mox.IgnoreArg()).AndReturn(
            self.create_instance_choices([instance_id]))

        self.mox.ReplayAll()

        url = reverse('nova_volumes_attach', args=[TEST_PROJECT])
        data = {
            'volume': TEST_VOLUME,
            'instance': instance_id,
            'device': device
        }
        res = self.client.post(url, data)
        self.assertRedirectsNoFollow(
            res, reverse('nova_volumes', args=[TEST_PROJECT]))
        self.mox.VerifyAll()