Skip to content

Commit 329b351

Browse files
committed
Adopt sdk_fakes for compute.aggregate
Drop fakes generation for compute aggregates in favor of sdk_fakes Change-Id: I4965a5fe8fc3d70390ca0268716519b617ca24eb
1 parent 52b2944 commit 329b351

File tree

2 files changed

+40
-89
lines changed

2 files changed

+40
-89
lines changed

openstackclient/tests/unit/compute/v2/fakes.py

Lines changed: 0 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121

2222
from keystoneauth1 import discover
2323
from openstack.compute.v2 import _proxy
24-
from openstack.compute.v2 import aggregate as _aggregate
2524
from openstack.compute.v2 import availability_zone as _availability_zone
2625
from openstack.compute.v2 import extension as _extension
2726
from openstack.compute.v2 import flavor as _flavor
@@ -142,63 +141,6 @@ class TestComputev2(
142141
): ...
143142

144143

145-
def create_one_aggregate(attrs=None):
146-
"""Create a fake aggregate.
147-
148-
:param dict attrs: A dictionary with all attributes
149-
:return: A fake openstack.compute.v2.aggregate.Aggregate object
150-
"""
151-
attrs = attrs or {}
152-
153-
# Set default attribute
154-
aggregate_info = {
155-
"name": "aggregate-name-" + uuid.uuid4().hex,
156-
"availability_zone": "ag_zone",
157-
"hosts": [],
158-
"id": "aggregate-id-" + uuid.uuid4().hex,
159-
"metadata": {
160-
"availability_zone": "ag_zone",
161-
"key1": "value1",
162-
},
163-
}
164-
165-
# Overwrite default attributes.
166-
aggregate_info.update(attrs)
167-
168-
aggregate = _aggregate.Aggregate(**aggregate_info)
169-
return aggregate
170-
171-
172-
def create_aggregates(attrs=None, count=2):
173-
"""Create multiple fake aggregates.
174-
175-
:param dict attrs: A dictionary with all attributes
176-
:param int count: The number of aggregates to fake
177-
:return: A list of fake openstack.compute.v2.aggregate.Aggregate objects
178-
"""
179-
aggregates = []
180-
for i in range(0, count):
181-
aggregates.append(create_one_aggregate(attrs))
182-
183-
return aggregates
184-
185-
186-
def get_aggregates(aggregates=None, count=2):
187-
"""Get an iterable MagicMock object with a list of faked aggregates.
188-
189-
If aggregates list is provided, then initialize the Mock object
190-
with the list. Otherwise create one.
191-
192-
:return: A list of fake openstack.compute.v2.aggregate.Aggregate objects
193-
:param int count: The number of aggregates to fake
194-
:return: An iterable Mock object with side_effect set to a list of faked
195-
aggregates
196-
"""
197-
if aggregates is None:
198-
aggregates = create_aggregates(count)
199-
return mock.Mock(side_effect=aggregates)
200-
201-
202144
def create_one_agent(attrs=None):
203145
"""Create a fake agent.
204146

openstackclient/tests/unit/compute/v2/test_aggregate.py

Lines changed: 40 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
from unittest import mock
1717
from unittest.mock import call
1818

19+
from openstack.compute.v2 import aggregate as _aggregate
1920
from openstack import exceptions as sdk_exceptions
21+
from openstack.test import fakes as sdk_fakes
2022
from osc_lib.cli import format_columns
2123
from osc_lib import exceptions
2224

@@ -26,8 +28,6 @@
2628

2729

2830
class TestAggregate(compute_fakes.TestComputev2):
29-
fake_ag = compute_fakes.create_one_aggregate()
30-
3131
columns = (
3232
'availability_zone',
3333
'created_at',
@@ -41,18 +41,25 @@ class TestAggregate(compute_fakes.TestComputev2):
4141
'uuid',
4242
)
4343

44-
data = (
45-
fake_ag.availability_zone,
46-
fake_ag.created_at,
47-
fake_ag.deleted_at,
48-
format_columns.ListColumn(fake_ag.hosts),
49-
fake_ag.id,
50-
fake_ag.is_deleted,
51-
fake_ag.name,
52-
format_columns.DictColumn(fake_ag.metadata),
53-
fake_ag.updated_at,
54-
fake_ag.uuid,
55-
)
44+
def setUp(self):
45+
super().setUp()
46+
47+
self.fake_ag = sdk_fakes.generate_fake_resource(
48+
_aggregate.Aggregate,
49+
metadata={'availability_zone': 'ag_zone', 'key1': 'value1'},
50+
)
51+
self.data = (
52+
self.fake_ag.availability_zone,
53+
self.fake_ag.created_at,
54+
self.fake_ag.deleted_at,
55+
format_columns.ListColumn(self.fake_ag.hosts),
56+
self.fake_ag.id,
57+
self.fake_ag.is_deleted,
58+
self.fake_ag.name,
59+
format_columns.DictColumn(self.fake_ag.metadata),
60+
self.fake_ag.updated_at,
61+
self.fake_ag.uuid,
62+
)
5663

5764

5865
class TestAggregateAddHost(TestAggregate):
@@ -155,13 +162,15 @@ def test_aggregate_create_with_property(self):
155162

156163

157164
class TestAggregateDelete(TestAggregate):
158-
fake_ags = compute_fakes.create_aggregates(count=2)
159-
160165
def setUp(self):
161166
super().setUp()
162167

163-
self.compute_sdk_client.find_aggregate = compute_fakes.get_aggregates(
164-
self.fake_ags
168+
self.fake_ags = list(
169+
sdk_fakes.generate_fake_resources(_aggregate.Aggregate, 2)
170+
)
171+
172+
self.compute_sdk_client.find_aggregate = mock.Mock(
173+
side_effect=[self.fake_ags[0], self.fake_ags[1]]
165174
)
166175
self.cmd = aggregate.DeleteAggregate(self.app, None)
167176

@@ -526,25 +535,25 @@ class TestAggregateShow(TestAggregate):
526535
'uuid',
527536
)
528537

529-
data = (
530-
TestAggregate.fake_ag.availability_zone,
531-
TestAggregate.fake_ag.created_at,
532-
TestAggregate.fake_ag.deleted_at,
533-
format_columns.ListColumn(TestAggregate.fake_ag.hosts),
534-
TestAggregate.fake_ag.id,
535-
TestAggregate.fake_ag.is_deleted,
536-
TestAggregate.fake_ag.name,
537-
format_columns.DictColumn(TestAggregate.fake_ag.metadata),
538-
TestAggregate.fake_ag.updated_at,
539-
TestAggregate.fake_ag.uuid,
540-
)
541-
542538
def setUp(self):
543539
super().setUp()
544540

545541
self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
546542
self.cmd = aggregate.ShowAggregate(self.app, None)
547543

544+
self.data = (
545+
self.fake_ag.availability_zone,
546+
self.fake_ag.created_at,
547+
self.fake_ag.deleted_at,
548+
format_columns.ListColumn(self.fake_ag.hosts),
549+
self.fake_ag.id,
550+
self.fake_ag.is_deleted,
551+
self.fake_ag.name,
552+
format_columns.DictColumn(self.fake_ag.metadata),
553+
self.fake_ag.updated_at,
554+
self.fake_ag.uuid,
555+
)
556+
548557
def test_aggregate_show(self):
549558
arglist = [
550559
'ag1',

0 commit comments

Comments
 (0)