diff options
author | Jude Job <judeopenstack@gmail.com> | 2015-12-30 16:17:30 +0530 |
---|---|---|
committer | David Stanek <dstanek@dstanek.com> | 2016-01-27 20:23:17 +0000 |
commit | 677ef6d44f36f2347d846eba3a8e479ed2b0f364 (patch) | |
tree | 357a29ea95000c54f944c651c995708833697f7a | |
parent | b30722df4015a8fe184d2e7e8c9cdafcb1565955 (diff) | |
download | python-keystoneclient-677ef6d44f36f2347d846eba3a8e479ed2b0f364.tar.gz |
Missing defaults in the create() method in the v2 ServiceManager
This patch include a new method for testing,
without description value.
Change-Id: Icd04e4479a341e7691fc562b3e09d5aa41a354e7
Closes-Bug: #1318438
-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, |