]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Set expected HTTP codes for create and delete
authorKevin Benton <blak111@gmail.com>
Tue, 15 Sep 2015 17:16:11 +0000 (10:16 -0700)
committerKevin Benton <blak111@gmail.com>
Tue, 15 Sep 2015 18:15:21 +0000 (11:15 -0700)
Our API tests have HTTP code assertions that our controller
was not honoring in the create and delete cases.

Change-Id: I3b00348c854b5d887d74c115d06984222f20ccc1

neutron/pecan_wsgi/controllers/root.py
neutron/tests/functional/pecan_wsgi/test_functional.py

index b277ce28fa9625a3b04036e9b0a16077c6ab6d13..0162b7bcd02052453cb9b22fe6e10fbfb428627f 100644 (file)
@@ -138,6 +138,7 @@ class CollectionsController(object):
     @when(index, method='POST')
     def post(self, *args, **kwargs):
         # TODO(kevinbenton): emulated bulk!
+        pecan.response.status = 201
         if request.bulk:
             method = 'create_%s_bulk' % request.resource_type
         else:
@@ -172,5 +173,7 @@ class ItemController(object):
 
     @when(index, method='DELETE')
     def delete(self):
+        # TODO(kevinbenton): setting code could be in a decorator
+        pecan.response.status = 204
         deleter = getattr(request.plugin, 'delete_%s' % request.resource_type)
         return deleter(request.context, self.item)
index 8e4b135d3eeb1fe0ad861014d489bdead92feda5..a3666277fe04b541f28d44367b175b6734548e08 100644 (file)
@@ -78,7 +78,7 @@ class TestV2Controller(PecanFunctionalTest):
                              'admin_state_up': True,
                              'tenant_id': 'tenid'}},
             headers={'X-Tenant-Id': 'tenid'})
-        self.assertEqual(response.status_int, 200)
+        self.assertEqual(response.status_int, 201)
 
     def test_put(self):
         response = self.app.put_json('/v2.0/ports/%s.json' % self.port['id'],
@@ -89,7 +89,7 @@ class TestV2Controller(PecanFunctionalTest):
     def test_delete(self):
         response = self.app.delete('/v2.0/ports/%s.json' % self.port['id'],
                                    headers={'X-Tenant-Id': 'tenid'})
-        self.assertEqual(response.status_int, 200)
+        self.assertEqual(response.status_int, 204)
 
     def test_plugin_initialized(self):
         self.assertIsNotNone(manager.NeutronManager._instance)