def test_xmlarticle_meta_contrib_group_author_without_xrefs_pipe(self):

        del (self._raw_json['article']['v71'])
        article_meta = Article(self._raw_json)

        pxml = ET.Element('article')
        pxml.append(ET.Element('front'))

        front = pxml.find('front')
        front.append(ET.Element('article-meta'))

        data = [self._article_meta, pxml]

        xmlarticle = export_rsps.XMLArticleMetaContribGroupPipe()
        raw, xml = xmlarticle.transform(data)

        fullnames = [
            i.get('rid') for i in xml.findall(
                './front/article-meta/contrib-group/contrib/xref')
        ]

        self.assertEqual([
            u'aff01', u'aff01', u'aff01', u'aff01', u'aff01', u'aff01',
            u'aff02', u'aff01', u'aff02', u'aff01', u'aff03'
        ], fullnames)
    def test_xmlarticle_meta_contrib_group_author_names_pipe(self):

        pxml = ET.Element('article')
        pxml.append(ET.Element('front'))

        front = pxml.find('front')
        front.append(ET.Element('article-meta'))

        data = [self._article_meta, pxml]

        xmlarticle = export_rsps.XMLArticleMetaContribGroupPipe()
        raw, xml = xmlarticle.transform(data)

        fullnames = [
            ' '.join([i.find('given-names').text,
                      i.find('surname').text]) for i in xml.findall(
                          './front/article-meta/contrib-group/contrib/name')
        ]

        self.assertEqual([
            u'Mariangela Leal Cherchiglia', u'Elaine Leandro Machado',
            u'Daniele Araújo Campo Szuster', u'Eli Iola Gurgel Andrade',
            u'Francisco de Assis Acúrcio', u'Waleska Teixeira Caiaffa',
            u'Ricardo Sesso', u'Augusto A Guerra Junior',
            u'Odilon Vanni de Queiroz', u'Isabel Cristina Gomes'
        ], fullnames)
Beispiel #3
0
    def pipeline_rsps(self):
        xylose_article = Article(self._article)

        ppl = plumber.Pipeline(
            export_rsps.SetupArticlePipe(), export_rsps.XMLArticlePipe(),
            export_rsps.XMLFrontPipe(),
            export_rsps.XMLJournalMetaJournalIdPipe(),
            export_rsps.XMLJournalMetaJournalTitleGroupPipe(),
            export_rsps.XMLJournalMetaISSNPipe(),
            export_rsps.XMLJournalMetaPublisherPipe(),
            export_rsps.XMLArticleMetaArticleIdPublisherPipe(),
            export_rsps.XMLArticleMetaArticleIdDOIPipe(),
            export_rsps.XMLArticleMetaArticleCategoriesPipe(),
            export_rsps.XMLArticleMetaTitleGroupPipe(),
            export_rsps.XMLArticleMetaTranslatedTitleGroupPipe(),
            export_rsps.XMLArticleMetaContribGroupPipe(),
            export_rsps.XMLArticleMetaAffiliationPipe(),
            export_rsps.XMLArticleMetaDatesInfoPipe(),
            export_rsps.XMLArticleMetaIssueInfoPipe(),
            export_rsps.XMLArticleMetaElocationInfoPipe(),
            export_rsps.XMLArticleMetaPagesInfoPipe(),
            export_rsps.XMLArticleMetaHistoryPipe(),
            export_rsps.XMLArticleMetaPermissionPipe(),
            export_rsps.XMLArticleMetaSelfUriPipe(),
            export_rsps.XMLArticleMetaAbstractsPipe(),
            export_rsps.XMLArticleMetaKeywordsPipe(),
            export_rsps.XMLArticleMetaCountsPipe(), export_rsps.XMLBodyPipe(),
            export_rsps.XMLArticleMetaCitationsPipe(),
            export_rsps.XMLSubArticlePipe(), export_rsps.XMLClosePipe())

        transformed_data = ppl.run(xylose_article, rewrap=True)

        return next(transformed_data)
    def test_xmlarticle_meta_contrib_group_author_roles_pipe(self):

        pxml = ET.Element('article')
        pxml.append(ET.Element('front'))

        front = pxml.find('front')
        front.append(ET.Element('article-meta'))

        data = [self._article_meta, pxml]

        xmlarticle = export_rsps.XMLArticleMetaContribGroupPipe()
        raw, xml = xmlarticle.transform(data)

        fullnames = [i.text for i in xml.findall('./front/article-meta/contrib-group/contrib/role')]

        self.assertEqual([u'ND', u'ND', u'ND', u'ND', u'ND', u'ND', u'ND',
                          u'ND', u'ND', u'ND'], fullnames)
    def test_xmlarticle_meta_contrib_group_without_data_pipe(self):

        fakexylosearticle = Article({'article': {}, 'title': {}})

        pxml = ET.Element('article')
        pxml.append(ET.Element('front'))

        front = pxml.find('front')
        front.append(ET.Element('article-meta'))

        data = [fakexylosearticle, pxml]

        xmlarticle = export_rsps.XMLArticleMetaContribGroupPipe()
        raw, xml = xmlarticle.transform(data)

        titles = [i.find('contrib-group').text for i in xml.findall('./front/article-meta/contrib-group/contrib')]

        self.assertEqual([], titles)