Move constraint's tests to test_neutron_client.py
Change-Id: I24223b5e8bc9c8aff52d7062b1c0270c4455051b
This commit is contained in:
parent
ee3f1e4fdc
commit
0fc309592f
@ -12,6 +12,7 @@
|
||||
# under the License.
|
||||
|
||||
import mock
|
||||
from neutronclient.common import exceptions as qe
|
||||
|
||||
from heat.common import exception
|
||||
from heat.engine.clients.os import neutron
|
||||
@ -148,3 +149,36 @@ class NeutronClientPluginTests(NeutronClientPluginTestCase):
|
||||
self.assertRaises(exception.PhysicalResourceNameAmbiguity,
|
||||
self.neutron_plugin.get_secgroup_uuids,
|
||||
sgs_non_uuid)
|
||||
|
||||
|
||||
class NeutronConstraintsValidate(common.HeatTestCase):
|
||||
scenarios = [
|
||||
('validate_network',
|
||||
dict(constraint_class=neutron.NetworkConstraint,
|
||||
resource_type='network')),
|
||||
('validate_port',
|
||||
dict(constraint_class=neutron.PortConstraint,
|
||||
resource_type='port')),
|
||||
('validate_router',
|
||||
dict(constraint_class=neutron.RouterConstraint,
|
||||
resource_type='router')),
|
||||
('validate_subnet',
|
||||
dict(constraint_class=neutron.SubnetConstraint,
|
||||
resource_type='subnet'))
|
||||
]
|
||||
|
||||
def test_validate(self):
|
||||
nc = mock.Mock()
|
||||
mock_create = self.patchobject(neutron.NeutronClientPlugin, '_create')
|
||||
mock_create.return_value = nc
|
||||
mock_find = self.patchobject(neutron.neutronV20,
|
||||
'find_resourceid_by_name_or_id')
|
||||
mock_find.side_effect = ['foo',
|
||||
qe.NeutronClientException(status_code=404)]
|
||||
|
||||
constraint = self.constraint_class()
|
||||
ctx = utils.dummy_context()
|
||||
self.assertTrue(constraint.validate("foo", ctx))
|
||||
self.assertFalse(constraint.validate("bar", ctx))
|
||||
mock_find.assert_has_calls([mock.call(nc, self.resource_type, 'foo'),
|
||||
mock.call(nc, self.resource_type, 'bar')])
|
||||
|
@ -22,7 +22,6 @@ import six
|
||||
from heat.common import exception
|
||||
from heat.common import template_format
|
||||
from heat.engine.cfn import functions as cfn_funcs
|
||||
from heat.engine.clients.os import neutron
|
||||
from heat.engine import resource
|
||||
from heat.engine.resources.openstack.neutron import net
|
||||
from heat.engine.resources.openstack.neutron import provider_net
|
||||
@ -3158,99 +3157,3 @@ class NeutronPortTest(common.HeatTestCase):
|
||||
self.assertEqual('direct', port.properties['binding:vnic_type'])
|
||||
|
||||
self.m.VerifyAll()
|
||||
|
||||
|
||||
class NetworkConstraintTest(common.HeatTestCase):
|
||||
|
||||
def test_validate(self):
|
||||
nc = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(neutron.NeutronClientPlugin, '_create')
|
||||
neutron.NeutronClientPlugin._create().AndReturn(nc)
|
||||
self.m.StubOutWithMock(neutron.neutronV20,
|
||||
'find_resourceid_by_name_or_id')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'network', 'foo'
|
||||
).AndReturn('foo')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'network', 'bar'
|
||||
).AndRaise(qe.NeutronClientException(status_code=404))
|
||||
self.m.ReplayAll()
|
||||
|
||||
constraint = neutron.NetworkConstraint()
|
||||
ctx = utils.dummy_context()
|
||||
self.assertTrue(constraint.validate("foo", ctx))
|
||||
self.assertFalse(constraint.validate("bar", ctx))
|
||||
|
||||
self.m.VerifyAll()
|
||||
|
||||
|
||||
class PortConstraintTest(common.HeatTestCase):
|
||||
|
||||
def test_validate(self):
|
||||
nc = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(neutron.NeutronClientPlugin, '_create')
|
||||
neutron.NeutronClientPlugin._create().AndReturn(nc)
|
||||
self.m.StubOutWithMock(neutron.neutronV20,
|
||||
'find_resourceid_by_name_or_id')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'port', 'foo'
|
||||
).AndReturn('foo')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'port', 'bar'
|
||||
).AndRaise(qe.NeutronClientException(status_code=404))
|
||||
self.m.ReplayAll()
|
||||
|
||||
constraint = neutron.PortConstraint()
|
||||
ctx = utils.dummy_context()
|
||||
self.assertTrue(constraint.validate("foo", ctx))
|
||||
self.assertFalse(constraint.validate("bar", ctx))
|
||||
|
||||
self.m.VerifyAll()
|
||||
|
||||
|
||||
class RouterConstraintTest(common.HeatTestCase):
|
||||
|
||||
def test_validate(self):
|
||||
nc = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(neutron.NeutronClientPlugin, '_create')
|
||||
neutron.NeutronClientPlugin._create().AndReturn(nc)
|
||||
self.m.StubOutWithMock(neutron.neutronV20,
|
||||
'find_resourceid_by_name_or_id')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'router', 'foo'
|
||||
).AndReturn('foo')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'router', 'bar'
|
||||
).AndRaise(qe.NeutronClientException(status_code=404))
|
||||
self.m.ReplayAll()
|
||||
|
||||
constraint = neutron.RouterConstraint()
|
||||
ctx = utils.dummy_context()
|
||||
self.assertTrue(constraint.validate("foo", ctx))
|
||||
self.assertFalse(constraint.validate("bar", ctx))
|
||||
|
||||
self.m.VerifyAll()
|
||||
|
||||
|
||||
class SubnetConstraintTest(common.HeatTestCase):
|
||||
|
||||
def test_validate(self):
|
||||
nc = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(neutron.NeutronClientPlugin, '_create')
|
||||
neutron.NeutronClientPlugin._create().AndReturn(nc)
|
||||
self.m.StubOutWithMock(neutron.neutronV20,
|
||||
'find_resourceid_by_name_or_id')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'subnet', 'foo'
|
||||
).AndReturn('foo')
|
||||
neutron.neutronV20.find_resourceid_by_name_or_id(
|
||||
nc, 'subnet', 'bar'
|
||||
).AndRaise(qe.NeutronClientException(status_code=404))
|
||||
self.m.ReplayAll()
|
||||
|
||||
constraint = neutron.SubnetConstraint()
|
||||
ctx = utils.dummy_context()
|
||||
self.assertTrue(constraint.validate("foo", ctx))
|
||||
self.assertFalse(constraint.validate("bar", ctx))
|
||||
|
||||
self.m.VerifyAll()
|
||||
|
Loading…
Reference in New Issue
Block a user