Merge "BSN: include missing data in floating IP call"

This commit is contained in:
Jenkins 2014-11-21 20:31:22 +00:00 committed by Gerrit Code Review
commit aafc08abaa
2 changed files with 8 additions and 4 deletions

View File

@ -589,12 +589,12 @@ class ServerPool(object):
def rest_create_floatingip(self, tenant_id, floatingip): def rest_create_floatingip(self, tenant_id, floatingip):
resource = FLOATINGIPS_PATH % (tenant_id, floatingip['id']) resource = FLOATINGIPS_PATH % (tenant_id, floatingip['id'])
errstr = _("Unable to create floating IP: %s") errstr = _("Unable to create floating IP: %s")
self.rest_action('PUT', resource, errstr=errstr) self.rest_action('PUT', resource, floatingip, errstr=errstr)
def rest_update_floatingip(self, tenant_id, floatingip, oldid): def rest_update_floatingip(self, tenant_id, floatingip, oldid):
resource = FLOATINGIPS_PATH % (tenant_id, oldid) resource = FLOATINGIPS_PATH % (tenant_id, oldid)
errstr = _("Unable to update floating IP: %s") errstr = _("Unable to update floating IP: %s")
self.rest_action('PUT', resource, errstr=errstr) self.rest_action('PUT', resource, floatingip, errstr=errstr)
def rest_delete_floatingip(self, tenant_id, oldid): def rest_delete_floatingip(self, tenant_id, oldid):
resource = FLOATINGIPS_PATH % (tenant_id, oldid) resource = FLOATINGIPS_PATH % (tenant_id, oldid)

View File

@ -459,13 +459,17 @@ class ServerManagerTests(test_rp.BigSwitchProxyPluginV2TestCase):
def test_floating_calls(self): def test_floating_calls(self):
pl = manager.NeutronManager.get_plugin() pl = manager.NeutronManager.get_plugin()
with mock.patch(SERVERMANAGER + '.ServerPool.rest_action') as ramock: with mock.patch(SERVERMANAGER + '.ServerPool.rest_action') as ramock:
pl.servers.rest_create_floatingip('tenant', {'id': 'somefloat'}) body1 = {'id': 'somefloat'}
pl.servers.rest_update_floatingip('tenant', {'name': 'myfl'}, 'id') body2 = {'name': 'myfl'}
pl.servers.rest_create_floatingip('tenant', body1)
pl.servers.rest_update_floatingip('tenant', body2, 'id')
pl.servers.rest_delete_floatingip('tenant', 'oldid') pl.servers.rest_delete_floatingip('tenant', 'oldid')
ramock.assert_has_calls([ ramock.assert_has_calls([
mock.call('PUT', '/tenants/tenant/floatingips/somefloat', mock.call('PUT', '/tenants/tenant/floatingips/somefloat',
body1,
errstr=u'Unable to create floating IP: %s'), errstr=u'Unable to create floating IP: %s'),
mock.call('PUT', '/tenants/tenant/floatingips/id', mock.call('PUT', '/tenants/tenant/floatingips/id',
body2,
errstr=u'Unable to update floating IP: %s'), errstr=u'Unable to update floating IP: %s'),
mock.call('DELETE', '/tenants/tenant/floatingips/oldid', mock.call('DELETE', '/tenants/tenant/floatingips/oldid',
errstr=u'Unable to delete floating IP: %s') errstr=u'Unable to delete floating IP: %s')