411
411
self.assertDictMatch(res_dict, expected)
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')
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()
718
718
use_admin_context=False)
719
719
self.assertRaises(webob.exc.HTTPBadRequest, self.controller.index, req)
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)
727
def test_get_servers_deleted_status_as_admin(self):
728
server_uuid = str(utils.gen_uuid())
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')
735
return [fakes.stub_instance(100, uuid=server_uuid)]
737
self.stubs.Set(nova.compute.API, 'get_all', fake_get_all)
739
req = fakes.HTTPRequest.blank('/v2/fake/servers?status=deleted',
740
use_admin_context=True)
742
servers = self.controller.detail(req)['servers']
743
self.assertEqual(len(servers), 1)
744
self.assertEqual(servers[0]['id'], server_uuid)
721
746
def test_get_servers_allows_name(self):
722
747
server_uuid = str(utils.gen_uuid())
4765
4790
"""Test create with malformed body"""
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.")
4770
4795
self.stubs.Set(nova.compute.api.API, 'create', fake_create)
4777
4802
req.body = jsonutils.dumps(body)
4778
4803
res = req.get_response(self.app)
4779
4804
self.assertEqual(422, res.status_int)
4806
def test_update_missing_server(self):
4807
"""Test create with malformed body"""
4809
def fake_update(*args, **kwargs):
4810
raise test.TestingException("Should not reach the compute API.")
4812
self.stubs.Set(nova.compute.api.API, 'create', fake_update)
4814
req = fakes.HTTPRequest.blank('/fake/servers/1')
4816
req.content_type = 'application/json'
4817
body = {'foo': {'a': 'b'}}
4819
req.body = jsonutils.dumps(body)
4820
res = req.get_response(self.app)
4821
self.assertEqual(422, res.status_int)