diff options
-rw-r--r-- | keystoneclient/tests/unit/v2_0/test_services.py | 33 | ||||
-rw-r--r-- | keystoneclient/v2_0/services.py | 2 |
2 files changed, 33 insertions, 2 deletions
diff --git a/keystoneclient/tests/unit/v2_0/test_services.py b/keystoneclient/tests/unit/v2_0/test_services.py index f57f743..5c75e27 100644 --- a/keystoneclient/tests/unit/v2_0/test_services.py +++ b/keystoneclient/tests/unit/v2_0/test_services.py @@ -42,7 +42,7 @@ class ServiceTests(utils.ClientTestCase): }, } - def test_create(self): + def test_create_with_description(self): req_body = { "OS-KSADM:service": { "name": "swift", @@ -68,6 +68,37 @@ class ServiceTests(utils.ClientTestCase): self.assertIsInstance(service, services.Service) self.assertEqual(service.id, service_id) self.assertEqual(service.name, req_body['OS-KSADM:service']['name']) + self.assertEqual(service.description, + req_body['OS-KSADM:service']['description']) + self.assertRequestBodyIs(json=req_body) + + def test_create_without_description(self): + req_body = { + "OS-KSADM:service": { + "name": "swift", + "type": "object-store", + "description": None, + } + } + service_id = uuid.uuid4().hex + resp_body = { + "OS-KSADM:service": { + "name": "swift", + "type": "object-store", + "id": service_id, + "description": None, + } + } + self.stub_url('POST', ['OS-KSADM', 'services'], json=resp_body) + + service = self.client.services.create( + req_body['OS-KSADM:service']['name'], + req_body['OS-KSADM:service']['type'], + req_body['OS-KSADM:service']['description']) + self.assertIsInstance(service, services.Service) + self.assertEqual(service.id, service_id) + self.assertEqual(service.name, req_body['OS-KSADM:service']['name']) + self.assertEqual(service.description, None) self.assertRequestBodyIs(json=req_body) def test_delete(self): diff --git a/keystoneclient/v2_0/services.py b/keystoneclient/v2_0/services.py index d93353c..4e6d3af 100644 --- a/keystoneclient/v2_0/services.py +++ b/keystoneclient/v2_0/services.py @@ -35,7 +35,7 @@ class ServiceManager(base.ManagerWithFind): """Retrieve a service by id.""" return self._get("/OS-KSADM/services/%s" % id, "OS-KSADM:service") - def create(self, name, service_type, description): + def create(self, name, service_type, description=None): """Create a new service.""" body = {"OS-KSADM:service": {'name': name, 'type': service_type, |