diff options
author | Jenkins <jenkins@review.openstack.org> | 2014-08-28 20:00:45 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2014-08-28 20:00:46 +0000 |
commit | 7bd8eb2aacae499a957c54bb953bad3c722b0c7d (patch) | |
tree | f8c098cb41156ea870c138553b2464301d857ff1 | |
parent | 3113ce8d23fb2cded5adadb8a311eef6296f5403 (diff) | |
parent | 49c2c64304b5a79c3658c1b57f665fd8e2fe2419 (diff) | |
download | python-cinderclient-7bd8eb2aacae499a957c54bb953bad3c722b0c7d.tar.gz |
Merge "convert availability zone tests to requests-mock"
-rw-r--r-- | cinderclient/tests/fixture_data/availability_zones.py | 80 | ||||
-rw-r--r-- | cinderclient/tests/v1/test_availability_zone.py | 17 | ||||
-rw-r--r-- | cinderclient/tests/v2/test_availability_zone.py | 17 |
3 files changed, 98 insertions, 16 deletions
diff --git a/cinderclient/tests/fixture_data/availability_zones.py b/cinderclient/tests/fixture_data/availability_zones.py new file mode 100644 index 0000000..bb1bc68 --- /dev/null +++ b/cinderclient/tests/fixture_data/availability_zones.py @@ -0,0 +1,80 @@ +# 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 datetime import datetime +from cinderclient.tests.fixture_data import base + +# FIXME(jamielennox): use timeutils from oslo +FORMAT = '%Y-%m-%d %H:%M:%S' + + +class Fixture(base.Fixture): + + base_url = 'os-availability-zone' + + def setUp(self): + super(Fixture, self).setUp() + + get_availability = { + "availabilityZoneInfo": [ + { + "zoneName": "zone-1", + "zoneState": {"available": True}, + "hosts": None, + }, + { + "zoneName": "zone-2", + "zoneState": {"available": False}, + "hosts": None, + }, + ] + } + self.requests.register_uri('GET', self.url(), json=get_availability) + + updated_1 = datetime(2012, 12, 26, 14, 45, 25, 0).strftime(FORMAT) + updated_2 = datetime(2012, 12, 26, 14, 45, 24, 0).strftime(FORMAT) + get_detail = { + "availabilityZoneInfo": [ + { + "zoneName": "zone-1", + "zoneState": {"available": True}, + "hosts": { + "fake_host-1": { + "cinder-volume": { + "active": True, + "available": True, + "updated_at": updated_1, + } + } + } + }, + { + "zoneName": "internal", + "zoneState": {"available": True}, + "hosts": { + "fake_host-1": { + "cinder-sched": { + "active": True, + "available": True, + "updated_at": updated_2, + } + } + } + }, + { + "zoneName": "zone-2", + "zoneState": {"available": False}, + "hosts": None, + }, + ] + } + self.requests.register_uri('GET', self.url('detail'), json=get_detail) diff --git a/cinderclient/tests/v1/test_availability_zone.py b/cinderclient/tests/v1/test_availability_zone.py index 26cb124..e3e7d1f 100644 --- a/cinderclient/tests/v1/test_availability_zone.py +++ b/cinderclient/tests/v1/test_availability_zone.py @@ -18,22 +18,23 @@ import six from cinderclient.v1 import availability_zones from cinderclient.v1 import shell +from cinderclient.tests.fixture_data import client +from cinderclient.tests.fixture_data import availability_zones as azfixture from cinderclient.tests import utils -from cinderclient.tests.v1 import fakes -cs = fakes.FakeClient() +class AvailabilityZoneTest(utils.FixturedTestCase): - -class AvailabilityZoneTest(utils.TestCase): + client_fixture_class = client.V1 + data_fixture_class = azfixture.Fixture def _assertZone(self, zone, name, status): self.assertEqual(name, zone.zoneName) self.assertEqual(status, zone.zoneState) def test_list_availability_zone(self): - zones = cs.availability_zones.list(detailed=False) - cs.assert_called('GET', '/os-availability-zone') + zones = self.cs.availability_zones.list(detailed=False) + self.assert_called('GET', '/os-availability-zone') for zone in zones: self.assertIsInstance(zone, @@ -53,8 +54,8 @@ class AvailabilityZoneTest(utils.TestCase): self._assertZone(z1[0], l1[0], l1[1]) def test_detail_availability_zone(self): - zones = cs.availability_zones.list(detailed=True) - cs.assert_called('GET', '/os-availability-zone/detail') + zones = self.cs.availability_zones.list(detailed=True) + self.assert_called('GET', '/os-availability-zone/detail') for zone in zones: self.assertIsInstance(zone, diff --git a/cinderclient/tests/v2/test_availability_zone.py b/cinderclient/tests/v2/test_availability_zone.py index b956074..599e884 100644 --- a/cinderclient/tests/v2/test_availability_zone.py +++ b/cinderclient/tests/v2/test_availability_zone.py @@ -18,22 +18,23 @@ import six from cinderclient.v2 import availability_zones from cinderclient.v2 import shell +from cinderclient.tests.fixture_data import client +from cinderclient.tests.fixture_data import availability_zones as azfixture from cinderclient.tests import utils -from cinderclient.tests.v2 import fakes -cs = fakes.FakeClient() +class AvailabilityZoneTest(utils.FixturedTestCase): - -class AvailabilityZoneTest(utils.TestCase): + client_fixture_class = client.V2 + data_fixture_class = azfixture.Fixture def _assertZone(self, zone, name, status): self.assertEqual(name, zone.zoneName) self.assertEqual(status, zone.zoneState) def test_list_availability_zone(self): - zones = cs.availability_zones.list(detailed=False) - cs.assert_called('GET', '/os-availability-zone') + zones = self.cs.availability_zones.list(detailed=False) + self.assert_called('GET', '/os-availability-zone') for zone in zones: self.assertIsInstance(zone, @@ -53,8 +54,8 @@ class AvailabilityZoneTest(utils.TestCase): self._assertZone(z1[0], l1[0], l1[1]) def test_detail_availability_zone(self): - zones = cs.availability_zones.list(detailed=True) - cs.assert_called('GET', '/os-availability-zone/detail') + zones = self.cs.availability_zones.list(detailed=True) + self.assert_called('GET', '/os-availability-zone/detail') for zone in zones: self.assertIsInstance(zone, |