Merge "TestServerGeneral: Add test for _prep_server_detail()"
This commit is contained in:
commit
a080227b07
@ -14,7 +14,6 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
import mock
|
import mock
|
||||||
import testtools
|
|
||||||
|
|
||||||
from mock import call
|
from mock import call
|
||||||
from openstackclient.common import exceptions
|
from openstackclient.common import exceptions
|
||||||
@ -1066,7 +1065,7 @@ class TestServerUnshelve(TestServer):
|
|||||||
self.run_method_with_servers('unshelve', 3)
|
self.run_method_with_servers('unshelve', 3)
|
||||||
|
|
||||||
|
|
||||||
class TestServerGeneral(testtools.TestCase):
|
class TestServerGeneral(TestServer):
|
||||||
OLD = {
|
OLD = {
|
||||||
'private': [
|
'private': [
|
||||||
{
|
{
|
||||||
@ -1160,3 +1159,46 @@ class TestServerGeneral(testtools.TestCase):
|
|||||||
'actual = %s\n' %
|
'actual = %s\n' %
|
||||||
(data_1, data_2, networks_format))
|
(data_1, data_2, networks_format))
|
||||||
self.assertIn(networks_format, (data_1, data_2), msg)
|
self.assertIn(networks_format, (data_1, data_2), msg)
|
||||||
|
|
||||||
|
@mock.patch('openstackclient.common.utils.find_resource')
|
||||||
|
def test_prep_server_detail(self, find_resource):
|
||||||
|
# Setup mock method return value. utils.find_resource() will be called
|
||||||
|
# twice in _prep_server_detail():
|
||||||
|
# - The first time, return image info.
|
||||||
|
# - The second time, return flavor info.
|
||||||
|
_image = image_fakes.FakeImage.create_one_image()
|
||||||
|
_flavor = compute_fakes.FakeFlavor.create_one_flavor()
|
||||||
|
find_resource.side_effect = [_image, _flavor]
|
||||||
|
|
||||||
|
# compute_client.servers.get() will be called once, return server info.
|
||||||
|
server_info = {
|
||||||
|
'image': {u'id': _image.id},
|
||||||
|
'flavor': {u'id': _flavor.id},
|
||||||
|
'tenant_id': u'tenant-id-xxx',
|
||||||
|
'networks': {u'public': [u'10.20.30.40', u'2001:db8::f']},
|
||||||
|
'links': u'http://xxx.yyy.com',
|
||||||
|
}
|
||||||
|
_server = compute_fakes.FakeServer.create_one_server(attrs=server_info)
|
||||||
|
self.servers_mock.get.return_value = _server
|
||||||
|
|
||||||
|
# Prepare result data.
|
||||||
|
info = {
|
||||||
|
'id': _server.id,
|
||||||
|
'name': _server.name,
|
||||||
|
'addresses': u'public=10.20.30.40, 2001:db8::f',
|
||||||
|
'flavor': u'%s (%s)' % (_flavor.name, _flavor.id),
|
||||||
|
'image': u'%s (%s)' % (_image.name, _image.id),
|
||||||
|
'project_id': u'tenant-id-xxx',
|
||||||
|
'properties': '',
|
||||||
|
}
|
||||||
|
|
||||||
|
# Call _prep_server_detail().
|
||||||
|
server_detail = server._prep_server_detail(
|
||||||
|
self.app.client_manager.compute,
|
||||||
|
_server
|
||||||
|
)
|
||||||
|
# 'networks' is used to create _server. Remove it.
|
||||||
|
server_detail.pop('networks')
|
||||||
|
|
||||||
|
# Check the results.
|
||||||
|
self.assertDictEqual(info, server_detail)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user