def test_yaml_snippet(self): if not self.out_filename or not self.in_filename: return yaml_content, expected_xml = self._read_content() project = None if ('project-type' in yaml_content): if (yaml_content['project-type'] == "maven"): project = project_maven.Maven(None) elif (yaml_content['project-type'] == "matrix"): project = project_matrix.Matrix(None) elif (yaml_content['project-type'] == "flow"): project = project_flow.Flow(None) elif (yaml_content['project-type'] == "multijob"): project = project_multijob.MultiJob(None) if project: xml_project = project.root_xml(yaml_content) else: xml_project = XML.Element('project') parser = YamlParser() pub = self.klass(ModuleRegistry({})) # Generate the XML tree directly with modules/general pub.gen_xml(parser, xml_project, yaml_content) # Prettify generated XML pretty_xml = unicode( XmlJob(xml_project, 'fixturejob').output(), 'utf-8') self.assertThat( pretty_xml, testtools.matchers.DocTestMatches( expected_xml, doctest.ELLIPSIS | doctest.NORMALIZE_WHITESPACE | doctest.REPORT_NDIFF))
def test_yaml_snippet(self): if not self.out_filename or not self.in_filename: return if self.conf_filename is not None: config = configparser.ConfigParser() config.readfp(open(self.conf_filename)) else: config = {} expected_xml = self._read_utf8_content() yaml_content = self._read_yaml_content(self.in_filename) project = None if ('project-type' in yaml_content): if (yaml_content['project-type'] == "maven"): project = project_maven.Maven(None) elif (yaml_content['project-type'] == "matrix"): project = project_matrix.Matrix(None) elif (yaml_content['project-type'] == "flow"): project = project_flow.Flow(None) elif (yaml_content['project-type'] == "multijob"): project = project_multijob.MultiJob(None) if project: xml_project = project.root_xml(yaml_content) else: xml_project = XML.Element('project') plugins_info = None if self.plugins_info_filename is not None: plugins_info = self._read_yaml_content(self.plugins_info_filename) self.addDetail("plugins-info-filename", text_content(self.plugins_info_filename)) self.addDetail("plugins-info", text_content(str(plugins_info))) parser = YamlParser(config, plugins_info) pub = self.klass(parser.registry) # Generate the XML tree directly with modules/general pub.gen_xml(parser, xml_project, yaml_content) # Prettify generated XML pretty_xml = XmlJob(xml_project, 'fixturejob').output().decode('utf-8') self.assertThat( pretty_xml, testtools.matchers.DocTestMatches( expected_xml, doctest.ELLIPSIS | doctest.NORMALIZE_WHITESPACE | doctest.REPORT_NDIFF))
def test_yaml_snippet(self): yaml_content, expected_xml = self.__read_content() xml_project = XML.Element('project') # root element parser = YamlParser() pub = publishers.Publishers(ModuleRegistry({})) # Generate the XML tree directly with modules/publishers/* pub.gen_xml(parser, xml_project, yaml_content) # Prettify generated XML pretty_xml = XmlJob(xml_project, 'fixturejob').output() self.assertThat( pretty_xml, testtools.matchers.DocTestMatches( expected_xml, doctest.ELLIPSIS | doctest.NORMALIZE_WHITESPACE | doctest.REPORT_NDIFF))