Merge "Allow tuple as for nics value"

This commit is contained in:
Jenkins 2017-07-27 18:27:00 +00:00 committed by Gerrit Code Review
commit b47eab6812
2 changed files with 17 additions and 4 deletions

View File

@ -223,7 +223,7 @@ class ServersTest(utils.FixturedTestCase):
def test_create_server_boot_with_nics_ipv6(self):
old_boot = self.cs.servers._boot
nics = [{'net-id': '11111111-1111-1111-1111-111111111111',
'v6-fixed-ip': '2001:db9:0:1::10'}]
'v6-fixed-ip': '2001:db9:0:1::10'}]
def wrapped_boot(url, key, *boot_args, **boot_kwargs):
self.assertEqual(boot_kwargs['nics'], nics)
@ -963,7 +963,7 @@ class ServersTest(utils.FixturedTestCase):
self.assert_request_id(ret, fakes.FAKE_REQUEST_ID_LIST)
self.assert_called('POST', '/servers/1234/action')
ret = self.cs.servers.evacuate(s, 'fake_target_host',
'False', 'NewAdminPassword')
'False', 'NewAdminPassword')
self.assert_request_id(ret, fakes.FAKE_REQUEST_ID_LIST)
self.assert_called('POST', '/servers/1234/action')
@ -1034,6 +1034,18 @@ class ServersTest(utils.FixturedTestCase):
flavor='1',
nics='auto')
def test__validate_create_nics(self):
if self.cs.api_version > api_versions.APIVersion('2.36'):
self.assertRaises(ValueError,
self.cs.servers._validate_create_nics, None)
else:
self.cs.servers._validate_create_nics(None)
self.assertRaises(ValueError,
self.cs.servers._validate_create_nics,
mock.Mock())
self.cs.servers._validate_create_nics(["foo", "bar"])
self.cs.servers._validate_create_nics(("foo", "bar"))
class ServersV26Test(ServersTest):

View File

@ -1273,8 +1273,9 @@ class ServerManager(base.BootingManagerWithFind):
if self.api_version > api_versions.APIVersion('2.36'):
if not nics:
raise ValueError('nics are required after microversion 2.36')
elif nics and not isinstance(nics, list):
raise ValueError('nics must be a list')
elif nics and not isinstance(nics, (list, tuple)):
raise ValueError('nics must be a list or a tuple, not %s' %
type(nics))
def create(self, name, image, flavor, meta=None, files=None,
reservation_id=None, min_count=None,