def compare_stacks(self, json_file, yaml_file, parameters): t1 = self.load_template(json_file) template_format.default_for_missing(t1, 'AWSTemplateFormatVersion', template_format.CFN_VERSIONS) del(t1[u'AWSTemplateFormatVersion']) t2 = self.load_template(yaml_file) del(t2[u'HeatTemplateFormatVersion']) stack1 = utils.parse_stack(t1, parameters) stack2 = utils.parse_stack(t2, parameters) # compare resources separately so that resolved static data # is compared t1nr = dict(stack1.t.t) del(t1nr['Resources']) t2nr = dict(stack2.t.t) del(t2nr['Resources']) self.assertEqual(t1nr, t2nr) self.assertEquals(set(stack1.resources.keys()), set(stack2.resources.keys())) for key in stack1.resources: self.assertEqual(stack1.resources[key].t, stack2.resources[key].t)
def compare_stacks(self, json_file, yaml_file, parameters): t1 = self.load_template(json_file) template_format.default_for_missing(t1, 'AWSTemplateFormatVersion', template_format.CFN_VERSIONS) del (t1[u'AWSTemplateFormatVersion']) t2 = self.load_template(yaml_file) del (t2[u'HeatTemplateFormatVersion']) stack1 = utils.parse_stack(t1, parameters) stack2 = utils.parse_stack(t2, parameters) # compare resources separately so that resolved static data # is compared t1nr = dict(stack1.t.t) del (t1nr['Resources']) t2nr = dict(stack2.t.t) del (t2nr['Resources']) self.assertEqual(t1nr, t2nr) self.assertEqual(set(stack1.resources.keys()), set(stack2.resources.keys())) for key in stack1.resources: self.assertEqual(stack1.resources[key].t, stack2.resources[key].t)
def compare_json_vs_yaml(self, json_str, yml_str, file_name): yml = template_format.parse(yml_str) self.assertEqual(u"2012-12-12", yml[u"HeatTemplateFormatVersion"], file_name) self.assertFalse(u"AWSTemplateFormatVersion" in yml, file_name) del (yml[u"HeatTemplateFormatVersion"]) jsn = template_format.parse(json_str) template_format.default_for_missing(jsn, "AWSTemplateFormatVersion", template_format.CFN_VERSIONS) if u"AWSTemplateFormatVersion" in jsn: del (jsn[u"AWSTemplateFormatVersion"]) self.assertEqual(yml, jsn, file_name)
def compare_json_vs_yaml(self, json_str, yml_str, file_name): yml = template_format.parse(yml_str) self.assertEqual(u'2012-12-12', yml[u'HeatTemplateFormatVersion'], file_name) self.assertFalse(u'AWSTemplateFormatVersion' in yml, file_name) del (yml[u'HeatTemplateFormatVersion']) jsn = template_format.parse(json_str) template_format.default_for_missing(jsn, 'AWSTemplateFormatVersion', template_format.CFN_VERSIONS) if u'AWSTemplateFormatVersion' in jsn: del (jsn[u'AWSTemplateFormatVersion']) self.assertEqual(yml, jsn, file_name)