diff --git a/novaclient/tests/v1_1/test_certs.py b/novaclient/tests/v1_1/test_certs.py index c08ac90ed..b6728369c 100644 --- a/novaclient/tests/v1_1/test_certs.py +++ b/novaclient/tests/v1_1/test_certs.py @@ -16,17 +16,24 @@ from novaclient.tests.v1_1 import fakes from novaclient.v1_1 import certs -cs = fakes.FakeClient() +class CertsTest(utils.TestCase): + def setUp(self): + super(CertsTest, self).setUp() + self.cs = self._get_fake_client() + self.cert_type = self._get_cert_type() + def _get_fake_client(self): + return fakes.FakeClient() -class FlavorsTest(utils.TestCase): + def _get_cert_type(self): + return certs.Certificate def test_create_cert(self): - cert = cs.certs.create() - cs.assert_called('POST', '/os-certificates') + cert = self.cs.certs.create() + self.cs.assert_called('POST', '/os-certificates') self.assertTrue(isinstance(cert, certs.Certificate)) def test_get_root_cert(self): - cert = cs.certs.get() - cs.assert_called('GET', '/os-certificates/root') + cert = self.cs.certs.get() + self.cs.assert_called('GET', '/os-certificates/root') self.assertTrue(isinstance(cert, certs.Certificate)) diff --git a/novaclient/tests/v3/test_certs.py b/novaclient/tests/v3/test_certs.py new file mode 100644 index 000000000..1e293adc0 --- /dev/null +++ b/novaclient/tests/v3/test_certs.py @@ -0,0 +1,29 @@ +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from novaclient.tests.v1_1 import fakes +from novaclient.tests.v1_1 import test_certs +from novaclient.v3 import certs + + +class CertsTest(test_certs.CertsTest): + def setUp(self): + super(CertsTest, self).setUp() + self.cs = self._get_fake_client() + self.cert_type = self._get_cert_type() + + def _get_fake_client(self): + return fakes.FakeClient() + + def _get_cert_type(self): + return certs.Certificate diff --git a/novaclient/v3/certs.py b/novaclient/v3/certs.py new file mode 100644 index 000000000..5e6785108 --- /dev/null +++ b/novaclient/v3/certs.py @@ -0,0 +1,30 @@ +# Copyright 2010 Jacob Kaplan-Moss + +# Copyright 2011 OpenStack Foundation +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +""" +Certificate interface. +""" + +from novaclient.v1_1 import certs + + +class Certificate(certs.Certificate): + pass + + +class CertificateManager(certs.CertificateManager): + pass diff --git a/novaclient/v3/client.py b/novaclient/v3/client.py index 5768617a4..5ef4b1dae 100644 --- a/novaclient/v3/client.py +++ b/novaclient/v3/client.py @@ -18,6 +18,7 @@ from novaclient import client from novaclient.v3 import agents from novaclient.v3 import aggregates from novaclient.v3 import availability_zones +from novaclient.v3 import certs from novaclient.v3 import flavor_access from novaclient.v3 import flavors from novaclient.v3 import hosts @@ -65,6 +66,7 @@ class Client(object): self.aggregates = aggregates.AggregateManager(self) self.availability_zones = \ availability_zones.AvailabilityZoneManager(self) + self.certs = certs.CertificateManager(self) self.hosts = hosts.HostManager(self) self.flavors = flavors.FlavorManager(self) self.flavor_access = flavor_access.FlavorAccessManager(self)