def pipeline_doaj(self): xylose_article = Article(self._article, iso_format='iso 639-2') ppl = plumber.Pipeline(export_doaj.SetupArticlePipe(), export_doaj.XMLArticlePipe(), export_doaj.XMLJournalMetaPublisherPipe(), export_doaj.XMLJournalMetaJournalTitlePipe(), export_doaj.XMLJournalMetaISSNPipe(), export_doaj.XMLArticleMetaPublicationDatePipe(), export_doaj.XMLArticleMetaVolumePipe(), export_doaj.XMLArticleMetaIssuePipe(), export_doaj.XMLArticleMetaStartPagePipe(), export_doaj.XMLArticleMetaEndPagePipe(), export_doaj.XMLArticleMetaArticleIdDOIPipe(), export_doaj.XMLArticleMetaIdPipe(), export_doaj.XMLArticleMetaDocumentTypePipe(), export_doaj.XMLArticleMetaTitlePipe(), export_doaj.XMLArticleMetaAuthorsPipe(), export_doaj.XMLArticleMetaAffiliationPipe(), export_doaj.XMLArticleMetaAbstractsPipe(), export_doaj.XMLArticleMetaFullTextUrlPipe(), export_doaj.XMLArticleMetaKeywordsPipe(), export_doaj.XMLClosePipe()) transformed_data = ppl.run(xylose_article, rewrap=True) return next(transformed_data)
def test_xmlarticle_meta_affiliation_index_pipe(self): pxml = ET.Element('records') pxml.append(ET.Element('record')) data = [self._article_meta, pxml] xmlarticle = export_doaj.XMLArticleMetaAffiliationPipe() raw, xml = xmlarticle.transform(data) indexes = [ i.get('affiliationId') for i in xml.findall('./record/affiliationsList/affiliationName') ] self.assertEqual(sorted([u'A01', u'A02', u'A03']), sorted(indexes))
def test_xmlarticle_meta_affiliation_without_data_pipe(self): fakexylosearticle = Article({'article': {}, 'title': {}}) pxml = ET.Element('records') pxml.append(ET.Element('record')) data = [fakexylosearticle, pxml] xmlarticle = export_doaj.XMLArticleMetaAffiliationPipe() raw, xml = xmlarticle.transform(data) try: xml.find('./record/affiliationsList').text except AttributeError: self.assertTrue(True) else: self.assertTrue(False)
def test_xmlarticle_meta_affiliation_institution_pipe(self): pxml = ET.Element('records') pxml.append(ET.Element('record')) data = [self._article_meta, pxml] xmlarticle = export_doaj.XMLArticleMetaAffiliationPipe() raw, xml = xmlarticle.transform(data) affiliations = [ i.text for i in xml.findall('./record/affiliationsList/affiliationName') ] self.assertEqual( sorted([ u'Universidade Federal de Minas Gerais', u'Universidade Federal de São Paulo', u'Universidade Federal de Minas Gerais' ]), sorted(affiliations))