Merge "Define engine service in setUp()"
This commit is contained in:
commit
2ceaca1cb8
|
@ -912,6 +912,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
return_value=True)
|
||||
self.mock_is_service_available = self.mock_isa.start()
|
||||
self.addCleanup(self.mock_isa.stop)
|
||||
self.engine = service.EngineService('a', 't')
|
||||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
|
||||
|
@ -939,8 +940,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
|
||||
def test_validate_ref_valid(self):
|
||||
t = template_format.parse(test_template_ref % 'WikiDatabase')
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual('test.', res['Description'])
|
||||
|
||||
def test_validate_with_environment(self):
|
||||
|
@ -948,9 +948,8 @@ class ValidateTest(common.HeatTestCase):
|
|||
test_template = test_template.replace('AWS::EC2::Instance',
|
||||
'My::Instance')
|
||||
t = template_format.parse(test_template)
|
||||
engine = service.EngineService('a', 't')
|
||||
params = {'resource_registry': {'My::Instance': 'AWS::EC2::Instance'}}
|
||||
res = dict(engine.validate_template(self.ctx, t, params))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, params))
|
||||
self.assertEqual('test.', res['Description'])
|
||||
|
||||
def test_validate_hot_valid(self):
|
||||
|
@ -962,32 +961,28 @@ class ValidateTest(common.HeatTestCase):
|
|||
my_instance:
|
||||
type: AWS::EC2::Instance
|
||||
""")
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual('test.', res['Description'])
|
||||
|
||||
def test_validate_ref_invalid(self):
|
||||
t = template_format.parse(test_template_ref % 'WikiDatabasez')
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertNotEqual(res['Description'], 'Successfully validated')
|
||||
|
||||
def test_validate_findinmap_valid(self):
|
||||
t = template_format.parse(test_template_findinmap_valid)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual('test.', res['Description'])
|
||||
|
||||
def test_validate_findinmap_invalid(self):
|
||||
t = template_format.parse(test_template_findinmap_invalid)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertNotEqual(res['Description'], 'Successfully validated')
|
||||
|
||||
def test_validate_parameters(self):
|
||||
t = template_format.parse(test_template_ref % 'WikiDatabase')
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
# Note: the assertion below does not expect a CFN dict of the parameter
|
||||
# but a dict of the parameters.Schema object.
|
||||
# For API CFN backward compatibility, formating to CFN is done in the
|
||||
|
@ -1002,8 +997,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
def test_validate_parameters_env_override(self):
|
||||
t = template_format.parse(test_template_default_override)
|
||||
env_params = {'net_name': 'betternetname'}
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, env_params))
|
||||
res = dict(self.engine.validate_template(self.ctx, t, env_params))
|
||||
self.assertEqual('defaultnet',
|
||||
res['Parameters']['net_name']['Default'])
|
||||
self.assertEqual('betternetname',
|
||||
|
@ -1012,8 +1006,8 @@ class ValidateTest(common.HeatTestCase):
|
|||
def test_validate_parameters_env_provided(self):
|
||||
t = template_format.parse(test_template_no_default)
|
||||
env_params = {'net_name': 'betternetname'}
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, env_params))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, env_params))
|
||||
self.assertEqual('betternetname',
|
||||
res['Parameters']['net_name']['Value'])
|
||||
self.assertNotIn('Default', res['Parameters']['net_name'])
|
||||
|
@ -1028,14 +1022,14 @@ class ValidateTest(common.HeatTestCase):
|
|||
my_instance:
|
||||
type: AWS::EC2::Instance
|
||||
""")
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual({}, res['Parameters'])
|
||||
|
||||
def test_validate_hot_parameter_label(self):
|
||||
t = template_format.parse(test_template_hot_parameter_label)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
parameters = res['Parameters']
|
||||
|
||||
expected = {'KeyName': {
|
||||
|
@ -1048,8 +1042,8 @@ class ValidateTest(common.HeatTestCase):
|
|||
|
||||
def test_validate_hot_no_parameter_label(self):
|
||||
t = template_format.parse(test_template_hot_no_parameter_label)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
parameters = res['Parameters']
|
||||
|
||||
expected = {'KeyName': {
|
||||
|
@ -1062,8 +1056,8 @@ class ValidateTest(common.HeatTestCase):
|
|||
|
||||
def test_validate_cfn_parameter_label(self):
|
||||
t = template_format.parse(test_template_cfn_parameter_label)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
parameters = res['Parameters']
|
||||
|
||||
expected = {'KeyName': {
|
||||
|
@ -1089,8 +1083,8 @@ class ValidateTest(common.HeatTestCase):
|
|||
param5:
|
||||
type: boolean
|
||||
""")
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
parameters = res['Parameters']
|
||||
# make sure all the types are reported correctly
|
||||
self.assertEqual('String', parameters["param1"]["Type"])
|
||||
|
@ -1106,8 +1100,8 @@ class ValidateTest(common.HeatTestCase):
|
|||
description: test.
|
||||
resources:
|
||||
""")
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
expected = {"Description": "test.",
|
||||
"Parameters": {}}
|
||||
self.assertEqual(expected, res)
|
||||
|
@ -1119,24 +1113,24 @@ class ValidateTest(common.HeatTestCase):
|
|||
description: test.
|
||||
outputs:
|
||||
""")
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
expected = {"Description": "test.",
|
||||
"Parameters": {}}
|
||||
self.assertEqual(expected, res)
|
||||
|
||||
def test_validate_properties(self):
|
||||
t = template_format.parse(test_template_invalid_property)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual(
|
||||
{'Error': 'Property error: Resources.WikiDatabase.Properties: '
|
||||
'Unknown Property UnknownProperty'}, res)
|
||||
|
||||
def test_invalid_resources(self):
|
||||
t = template_format.parse(test_template_invalid_resources)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual({'Error': 'Resources must contain Resource. '
|
||||
'Found a [%s] instead' % six.text_type},
|
||||
res)
|
||||
|
@ -1155,8 +1149,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
}
|
||||
""")
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t))
|
||||
res = dict(self.engine.validate_template(self.ctx, t))
|
||||
self.assertEqual({'Error': 'The template section is invalid: Output'},
|
||||
res)
|
||||
|
||||
|
@ -1170,15 +1163,14 @@ class ValidateTest(common.HeatTestCase):
|
|||
output:
|
||||
""")
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t))
|
||||
res = dict(self.engine.validate_template(self.ctx, t))
|
||||
self.assertEqual({'Error': 'The template section is invalid: output'},
|
||||
res)
|
||||
|
||||
def test_unimplemented_property(self):
|
||||
t = template_format.parse(test_template_unimplemented_property)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual(
|
||||
{'Error': 'Property error: Resources.WikiDatabase.Properties: '
|
||||
'Property SourceDestCheck not implemented yet'},
|
||||
|
@ -1186,21 +1178,21 @@ class ValidateTest(common.HeatTestCase):
|
|||
|
||||
def test_invalid_deletion_policy(self):
|
||||
t = template_format.parse(test_template_invalid_deletion_policy)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual({'Error': 'Invalid deletion policy "Destroy"'}, res)
|
||||
|
||||
def test_snapshot_deletion_policy(self):
|
||||
t = template_format.parse(test_template_snapshot_deletion_policy)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual(
|
||||
{'Error': '"Snapshot" deletion policy not supported'}, res)
|
||||
|
||||
def test_volume_snapshot_deletion_policy(self):
|
||||
t = template_format.parse(test_template_volume_snapshot)
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, t, {}))
|
||||
|
||||
res = dict(self.engine.validate_template(self.ctx, t, {}))
|
||||
self.assertEqual({'Description': u'test.', 'Parameters': {}}, res)
|
||||
|
||||
def test_validate_template_without_resources(self):
|
||||
|
@ -1208,8 +1200,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
heat_template_version: 2013-05-23
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
expected = {'Description': 'No description', 'Parameters': {}}
|
||||
self.assertEqual(expected, res)
|
||||
|
||||
|
@ -1229,8 +1220,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
foo: bar
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
self.assertEqual({'Error': '"Type" is not a valid keyword '
|
||||
'inside a resource definition'}, res)
|
||||
|
||||
|
@ -1250,8 +1240,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
foo: bar
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
self.assertEqual({'Error': '"Properties" is not a valid keyword '
|
||||
'inside a resource definition'}, res)
|
||||
|
||||
|
@ -1271,8 +1260,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
foo: bar
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
self.assertEqual({'Error': '"Metadata" is not a valid keyword '
|
||||
'inside a resource definition'}, res)
|
||||
|
||||
|
@ -1292,8 +1280,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
foo: bar
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
self.assertEqual({'Error': '"DependsOn" is not a valid keyword '
|
||||
'inside a resource definition'}, res)
|
||||
|
||||
|
@ -1313,8 +1300,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
foo: bar
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
self.assertEqual({'Error': '"DeletionPolicy" is not a valid '
|
||||
'keyword inside a resource definition'},
|
||||
res)
|
||||
|
@ -1335,8 +1321,7 @@ class ValidateTest(common.HeatTestCase):
|
|||
foo: bar
|
||||
''')
|
||||
|
||||
engine = service.EngineService('a', 't')
|
||||
res = dict(engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
res = dict(self.engine.validate_template(self.ctx, hot_tpl, {}))
|
||||
self.assertEqual({'Error': '"UpdatePolicy" is not a valid '
|
||||
'keyword inside a resource definition'},
|
||||
res)
|
||||
|
@ -1675,10 +1660,10 @@ class ValidateTest(common.HeatTestCase):
|
|||
my_instance:
|
||||
type: AWS::EC2::Instance
|
||||
""")
|
||||
engine = service.EngineService('a', 't')
|
||||
|
||||
self.mock_is_service_available.return_value = False
|
||||
ex = self.assertRaises(dispatcher.ExpectedException,
|
||||
engine.validate_template,
|
||||
self.engine.validate_template,
|
||||
self.ctx,
|
||||
t,
|
||||
{})
|
||||
|
|
Loading…
Reference in New Issue