Convert server group tests to requests_mock
Change-Id: Ic4b137073e0c662d26cac254611708b3f31734e0
This commit is contained in:
parent
611ce3dca1
commit
3aec23cfd2
@ -258,11 +258,14 @@ class FakeFloatingIP(object):
|
||||
self.instance_id = instance_id
|
||||
|
||||
|
||||
class FakeServerGroup(object):
|
||||
def __init__(self, id, name, policies):
|
||||
self.id = id
|
||||
self.name = name
|
||||
self.policies = policies
|
||||
def make_fake_server_group(id, name, policies):
|
||||
return json.loads(json.dumps({
|
||||
'id': id,
|
||||
'name': name,
|
||||
'policies': policies,
|
||||
'members': [],
|
||||
'metadata': {},
|
||||
}))
|
||||
|
||||
|
||||
class FakeVolume(object):
|
||||
|
@ -11,32 +11,58 @@
|
||||
# under the License.
|
||||
|
||||
|
||||
import mock
|
||||
import uuid
|
||||
|
||||
import shade
|
||||
from shade.tests.unit import base
|
||||
from shade.tests import fakes
|
||||
|
||||
|
||||
class TestServerGroup(base.TestCase):
|
||||
class TestServerGroup(base.RequestsMockTestCase):
|
||||
|
||||
@mock.patch.object(shade.OpenStackCloud, 'nova_client')
|
||||
def test_create_server_group(self, mock_nova):
|
||||
server_group_name = 'my-server-group'
|
||||
self.cloud.create_server_group(name=server_group_name,
|
||||
policies=['affinity'])
|
||||
def setUp(self):
|
||||
super(TestServerGroup, self).setUp()
|
||||
self.group_id = uuid.uuid4().hex
|
||||
self.group_name = self.getUniqueString('server-group')
|
||||
self.policies = ['affinity']
|
||||
self.fake_group = fakes.make_fake_server_group(
|
||||
self.group_id, self.group_name, self.policies)
|
||||
|
||||
mock_nova.server_groups.create.assert_called_once_with(
|
||||
name=server_group_name, policies=['affinity']
|
||||
)
|
||||
def test_create_server_group(self):
|
||||
|
||||
@mock.patch.object(shade.OpenStackCloud, 'nova_client')
|
||||
def test_delete_server_group(self, mock_nova):
|
||||
mock_nova.server_groups.list.return_value = [
|
||||
fakes.FakeServerGroup('1234', 'name', ['affinity'])
|
||||
]
|
||||
self.assertTrue(self.cloud.delete_server_group('1234'))
|
||||
mock_nova.server_groups.list.assert_called_once_with()
|
||||
mock_nova.server_groups.delete.assert_called_once_with(
|
||||
id='1234'
|
||||
)
|
||||
self.register_uris([
|
||||
dict(method='POST',
|
||||
uri=self.get_mock_url(
|
||||
'compute', 'public', append=['os-server-groups']),
|
||||
json={'server_group': self.fake_group},
|
||||
validate=dict(
|
||||
json={'server_group': {
|
||||
'name': self.group_name,
|
||||
'policies': self.policies,
|
||||
}})),
|
||||
dict(method='GET',
|
||||
uri=self.get_mock_url(
|
||||
'compute', 'public',
|
||||
append=['os-server-groups', self.group_id],),
|
||||
json={'server_group': self.fake_group}),
|
||||
])
|
||||
|
||||
self.cloud.create_server_group(name=self.group_name,
|
||||
policies=self.policies)
|
||||
|
||||
self.assert_calls()
|
||||
|
||||
def test_delete_server_group(self):
|
||||
self.register_uris([
|
||||
dict(method='GET',
|
||||
uri=self.get_mock_url(
|
||||
'compute', 'public', append=['os-server-groups']),
|
||||
json={'server_groups': [self.fake_group]}),
|
||||
dict(method='DELETE',
|
||||
uri=self.get_mock_url(
|
||||
'compute', 'public',
|
||||
append=['os-server-groups', self.group_id]),
|
||||
json={'server_groups': [self.fake_group]}),
|
||||
])
|
||||
self.assertTrue(self.cloud.delete_server_group(self.group_name))
|
||||
|
||||
self.assert_calls()
|
||||
|
Loading…
x
Reference in New Issue
Block a user