Skip to content

Commit 487fff8

Browse files
Jenkinsopenstack-gerrit
authored andcommitted
Merge "Move FakeServer to tests.common.v2.compute.fakes"
2 parents bf27398 + b3c2668 commit 487fff8

3 files changed

Lines changed: 87 additions & 80 deletions

File tree

openstackclient/tests/compute/v2/fakes.py

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@
1313
# under the License.
1414
#
1515

16+
import copy
1617
import mock
18+
import uuid
1719

1820
from openstackclient.tests import fakes
1921
from openstackclient.tests.identity.v2_0 import fakes as identity_fakes
@@ -139,3 +141,71 @@ def setUp(self):
139141
endpoint=fakes.AUTH_URL,
140142
token=fakes.AUTH_TOKEN,
141143
)
144+
145+
146+
class FakeServer(object):
147+
"""Fake one or more compute servers."""
148+
149+
@staticmethod
150+
def create_one_server(attrs={}, methods={}):
151+
"""Create a fake server.
152+
153+
:param Dictionary attrs:
154+
A dictionary with all attributes
155+
:param Dictionary methods:
156+
A dictionary with all methods
157+
:return:
158+
A FakeResource object, with id, name, metadata
159+
"""
160+
# Set default attributes.
161+
server_info = {
162+
'id': 'server-id-' + uuid.uuid4().hex,
163+
'name': 'server-name-' + uuid.uuid4().hex,
164+
'metadata': {},
165+
}
166+
167+
# Overwrite default attributes.
168+
server_info.update(attrs)
169+
170+
server = fakes.FakeResource(info=copy.deepcopy(server_info),
171+
methods=methods,
172+
loaded=True)
173+
return server
174+
175+
@staticmethod
176+
def create_servers(attrs={}, methods={}, count=2):
177+
"""Create multiple fake servers.
178+
179+
:param Dictionary attrs:
180+
A dictionary with all attributes
181+
:param Dictionary methods:
182+
A dictionary with all methods
183+
:param int count:
184+
The number of servers to fake
185+
:return:
186+
A list of FakeResource objects faking the servers
187+
"""
188+
servers = []
189+
for i in range(0, count):
190+
servers.append(FakeServer.create_one_server(attrs, methods))
191+
192+
return servers
193+
194+
@staticmethod
195+
def get_servers(servers=None, count=2):
196+
"""Get an iterable MagicMock object with a list of faked servers.
197+
198+
If servers list is provided, then initialize the Mock object with the
199+
list. Otherwise create one.
200+
201+
:param List servers:
202+
A list of FakeResource objects faking servers
203+
:param int count:
204+
The number of servers to fake
205+
:return:
206+
An iterable Mock object with side_effect set to a list of faked
207+
servers
208+
"""
209+
if servers is None:
210+
servers = FakeServer.create_servers(count)
211+
return mock.MagicMock(side_effect=servers)

openstackclient/tests/compute/v2/test_server.py

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@ def setUp(self):
6161
attrs = {
6262
'networks': {},
6363
}
64-
self.new_server = fakes.FakeServer.create_one_server(attrs=attrs)
64+
self.new_server = compute_fakes.FakeServer.create_one_server(
65+
attrs=attrs)
6566

6667
# This is the return value for utils.find_resource().
6768
# This is for testing --wait option.
@@ -398,7 +399,7 @@ class TestServerDelete(TestServer):
398399
def setUp(self):
399400
super(TestServerDelete, self).setUp()
400401

401-
self.server = fakes.FakeServer.create_one_server()
402+
self.server = compute_fakes.FakeServer.create_one_server()
402403

403404
# This is the return value for utils.find_resource()
404405
self.servers_mock.get.return_value = self.server
@@ -476,7 +477,7 @@ class TestServerImageCreate(TestServer):
476477
def setUp(self):
477478
super(TestServerImageCreate, self).setUp()
478479

479-
self.server = fakes.FakeServer.create_one_server()
480+
self.server = compute_fakes.FakeServer.create_one_server()
480481

481482
# This is the return value for utils.find_resource()
482483
self.servers_mock.get.return_value = self.server
@@ -569,11 +570,14 @@ def setUp(self):
569570
}
570571

571572
def setup_servers_mock(self, count=1):
572-
servers = fakes.FakeServer.create_servers(methods=self.methods,
573-
count=count)
573+
servers = compute_fakes.FakeServer.create_servers(
574+
methods=self.methods,
575+
count=count)
574576

575577
# This is the return value for utils.find_resource()
576-
self.servers_mock.get = fakes.FakeServer.get_servers(servers, 1)
578+
self.servers_mock.get = compute_fakes.FakeServer.get_servers(
579+
servers,
580+
1)
577581

578582
return servers
579583

@@ -617,7 +621,7 @@ class TestServerResize(TestServer):
617621
def setUp(self):
618622
super(TestServerResize, self).setUp()
619623

620-
self.server = fakes.FakeServer.create_one_server()
624+
self.server = compute_fakes.FakeServer.create_one_server()
621625

622626
# This is the return value for utils.find_resource()
623627
self.servers_mock.get.return_value = self.server
@@ -806,10 +810,13 @@ def setUp(self):
806810
}
807811

808812
def setup_servers_mock(self, count=1):
809-
servers = fakes.FakeServer.create_servers(methods=self.methods,
810-
count=count)
813+
servers = compute_fakes.FakeServer.create_servers(
814+
methods=self.methods,
815+
count=count)
811816

812-
self.servers_mock.get = fakes.FakeServer.get_servers(servers, 1)
817+
self.servers_mock.get = compute_fakes.FakeServer.get_servers(
818+
servers,
819+
1)
813820

814821
return servers
815822

openstackclient/tests/fakes.py

Lines changed: 0 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,10 @@
1313
# under the License.
1414
#
1515

16-
import copy
1716
import json
1817
import mock
1918
import six
2019
import sys
21-
import uuid
2220

2321
from keystoneauth1 import fixture
2422
import requests
@@ -185,71 +183,3 @@ def __getattr__(self, key):
185183
return self[key]
186184
except KeyError:
187185
raise AttributeError(key)
188-
189-
190-
class FakeServer(object):
191-
"""Fake one or more compute servers."""
192-
193-
@staticmethod
194-
def create_one_server(attrs={}, methods={}):
195-
"""Create a fake server.
196-
197-
:param Dictionary attrs:
198-
A dictionary with all attributes
199-
:param Dictionary methods:
200-
A dictionary with all methods
201-
:return:
202-
A FakeResource object, with id, name, metadata
203-
"""
204-
# Set default attributes.
205-
server_info = {
206-
'id': 'server-id-' + uuid.uuid4().hex,
207-
'name': 'server-name-' + uuid.uuid4().hex,
208-
'metadata': {},
209-
}
210-
211-
# Overwrite default attributes.
212-
server_info.update(attrs)
213-
214-
server = FakeResource(info=copy.deepcopy(server_info),
215-
methods=methods,
216-
loaded=True)
217-
return server
218-
219-
@staticmethod
220-
def create_servers(attrs={}, methods={}, count=2):
221-
"""Create multiple fake servers.
222-
223-
:param Dictionary attrs:
224-
A dictionary with all attributes
225-
:param Dictionary methods:
226-
A dictionary with all methods
227-
:param int count:
228-
The number of servers to fake
229-
:return:
230-
A list of FakeResource objects faking the servers
231-
"""
232-
servers = []
233-
for i in range(0, count):
234-
servers.append(FakeServer.create_one_server(attrs, methods))
235-
236-
return servers
237-
238-
@staticmethod
239-
def get_servers(servers=None, count=2):
240-
"""Get an iterable MagicMock object with a list of faked servers.
241-
242-
If servers list is provided, then initialize the Mock object with the
243-
list. Otherwise create one.
244-
245-
:param List servers:
246-
A list of FakeResource objects faking servers
247-
:param int count:
248-
The number of servers to fake
249-
:return:
250-
An iterable Mock object with side_effect set to a list of faked
251-
servers
252-
"""
253-
if servers is None:
254-
servers = FakeServer.create_servers(count)
255-
return mock.MagicMock(side_effect=servers)

0 commit comments

Comments
 (0)