Move constraint's tests to test_neutron_client.py

Change-Id: I24223b5e8bc9c8aff52d7062b1c0270c4455051b
This commit is contained in:
Sergey Kraynev 2015-03-27 07:38:14 -04:00
parent ee3f1e4fdc
commit 0fc309592f
2 changed files with 34 additions and 97 deletions

View File

@ -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')])

View File

@ -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()