~ubuntu-branches/ubuntu/quantal/nova/quantal-proposed

« back to all changes in this revision

Viewing changes to nova/tests/api/openstack/compute/test_servers.py

  • Committer: Package Import Robot
  • Author(s): Adam Gandelman, Adam Gandelman, Chuck Short
  • Date: 2012-08-27 15:37:18 UTC
  • mfrom: (1.1.60)
  • Revision ID: package-import@ubuntu.com-20120827153718-lj8er44eqqz1gsrj
Tags: 2012.2~rc1~20120827.15815-0ubuntu1
[ Adam Gandelman ]
* New upstream release.

[ Chuck Short ]
* debian/patches/0001-Update-tools-hacking-for-pep8-1.2-and-
  beyond.patch: Dropped we dont run pep8 tests anymore.
* debian/control: Drop pep8 build depends
* debian/*.upstart.in: Make sure we transition correctly from runlevel
  1 to 2. (LP: #820694)

Show diffs side-by-side

added added

removed removed

Lines of Context:
410
410
        }
411
411
        self.assertDictMatch(res_dict, expected)
412
412
 
413
 
    def test_get_server_addresses_nonexistant_network(self):
 
413
    def test_get_server_addresses_nonexistent_network(self):
414
414
        url = '/v2/fake/servers/%s/ips/network_0' % FAKE_UUID
415
415
        req = fakes.HTTPRequest.blank(url)
416
416
        self.assertRaises(webob.exc.HTTPNotFound, self.ips_controller.show,
417
417
                          req, FAKE_UUID, 'network_0')
418
418
 
419
 
    def test_get_server_addresses_nonexistant_server(self):
 
419
    def test_get_server_addresses_nonexistent_server(self):
420
420
        def fake_instance_get(*args, **kwargs):
421
421
            raise nova.exception.InstanceNotFound()
422
422
 
718
718
                                      use_admin_context=False)
719
719
        self.assertRaises(webob.exc.HTTPBadRequest, self.controller.index, req)
720
720
 
 
721
    def test_get_servers_deleted_status_as_user(self):
 
722
        req = fakes.HTTPRequest.blank('/v2/fake/servers?status=deleted',
 
723
                                      use_admin_context=False)
 
724
        self.assertRaises(webob.exc.HTTPBadRequest,
 
725
                          self.controller.detail, req)
 
726
 
 
727
    def test_get_servers_deleted_status_as_admin(self):
 
728
        server_uuid = str(utils.gen_uuid())
 
729
 
 
730
        def fake_get_all(compute_self, context, search_opts=None,
 
731
                         sort_key=None, sort_dir='desc'):
 
732
            self.assertTrue('vm_state' in search_opts)
 
733
            self.assertEqual(search_opts['vm_state'], 'deleted')
 
734
 
 
735
            return [fakes.stub_instance(100, uuid=server_uuid)]
 
736
 
 
737
        self.stubs.Set(nova.compute.API, 'get_all', fake_get_all)
 
738
 
 
739
        req = fakes.HTTPRequest.blank('/v2/fake/servers?status=deleted',
 
740
                                      use_admin_context=True)
 
741
 
 
742
        servers = self.controller.detail(req)['servers']
 
743
        self.assertEqual(len(servers), 1)
 
744
        self.assertEqual(servers[0]['id'], server_uuid)
 
745
 
721
746
    def test_get_servers_allows_name(self):
722
747
        server_uuid = str(utils.gen_uuid())
723
748
 
4765
4790
        """Test create with malformed body"""
4766
4791
 
4767
4792
        def fake_create(*args, **kwargs):
4768
 
            raise Exception("Request should not reach the compute API.")
 
4793
            raise test.TestingException("Should not reach the compute API.")
4769
4794
 
4770
4795
        self.stubs.Set(nova.compute.api.API, 'create', fake_create)
4771
4796
 
4777
4802
        req.body = jsonutils.dumps(body)
4778
4803
        res = req.get_response(self.app)
4779
4804
        self.assertEqual(422, res.status_int)
 
4805
 
 
4806
    def test_update_missing_server(self):
 
4807
        """Test create with malformed body"""
 
4808
 
 
4809
        def fake_update(*args, **kwargs):
 
4810
            raise test.TestingException("Should not reach the compute API.")
 
4811
 
 
4812
        self.stubs.Set(nova.compute.api.API, 'create', fake_update)
 
4813
 
 
4814
        req = fakes.HTTPRequest.blank('/fake/servers/1')
 
4815
        req.method = 'PUT'
 
4816
        req.content_type = 'application/json'
 
4817
        body = {'foo': {'a': 'b'}}
 
4818
 
 
4819
        req.body = jsonutils.dumps(body)
 
4820
        res = req.get_response(self.app)
 
4821
        self.assertEqual(422, res.status_int)