def test_get_xml_data_creates_SPS_Package_instance(self, mk_etree,
                                                    MockSPS_Package):
     xml_content = XML_FILE_CONTENT
     MockXML = Mock()
     mk_etree.XML.return_value = MockXML
     get_xml_data(xml_content, None)
     MockSPS_Package.assert_called_once_with(MockXML, None)
Ejemplo n.º 2
0
    def test_get_xml_data_returns_supplement_when_it_is_in_xml_content(self):
        xml_content = XML_FILE_CONTENT
        result = get_xml_data(xml_content, "1806-907X-rba-53-01-1-8")
        self.assertIsNone(result.get("supplement"))

        xml_file = etree.XML(XML_FILE_CONTENT)
        issue_tag = xml_file.find(".//article-meta/issue")
        issue_tag.text = "suppl 2"
        result = get_xml_data(etree.tostring(xml_file), "1806-907X-rba-53-01-1-8")
        self.assertEqual(result.get("supplement"), "02")
Ejemplo n.º 3
0
    def test_get_xml_data_does_not_return_number_when_it_is_not_in_xml_content(self):
        xml_file = etree.XML(XML_FILE_CONTENT)
        number_tag = xml_file.find(".//article-meta/issue")
        number_tag.text = "suppl 2"
        result = get_xml_data(etree.tostring(xml_file), "1806-907X-rba-53-01-1-8")
        self.assertNotIn("number", result.keys())

        number_tag.getparent().remove(number_tag)
        result = get_xml_data(etree.tostring(xml_file), "1806-907X-rba-53-01-1-8")
        self.assertNotIn("number", result.keys())
 def test_get_xml_data_returns_xml_metadata(self):
     xml_content = XML_FILE_CONTENT
     result = get_xml_data(xml_content, "1806-907X-rba-53-01-1-8")
     self.assertEqual(result["xml_package_name"], "1806-907X-rba-53-01-1-8")
     self.assertEqual(result["scielo_id"], "FX6F3cbyYmmwvtGmMB7WCgr")
     self.assertEqual(result["issn"], "1806-907X")
     self.assertEqual(result["volume"], "53")
     self.assertEqual(result["number"], "01")
     self.assertEqual(
         result["assets"],
         [
             {
                 "asset_id": "1806-907X-rba-53-01-1-8-g01.jpg"
             },
             {
                 "asset_id": "1806-907X-rba-53-01-1-8-g02.jpg"
             },
         ],
     )
     self.assertEqual(
         result["pdfs"],
         [
             {
                 "lang": "en",
                 "filename": "1806-907X-rba-53-01-1-8.pdf",
                 "mimetype": "application/pdf",
             },
             {
                 "lang": "pt",
                 "filename": "1806-907X-rba-53-01-1-8-pt.pdf",
                 "mimetype": "application/pdf",
             },
         ],
     )
Ejemplo n.º 5
0
 def test_get_xml_data_does_not_return_volume_when_it_is_not_in_xml_content(
         self):
     xml_file = etree.XML(XML_FILE_CONTENT)
     volume_tag = xml_file.find(".//article-meta/volume")
     volume_tag.getparent().remove(volume_tag)
     result = get_xml_data(etree.tostring(xml_file),
                           "1806-907X-rba-53-01-1-8")
     self.assertNotIn("volume", result.keys())
Ejemplo n.º 6
0
 def test_get_xml_data_returns_order_with_order_when_there_is_order_in_xml_content(self):
     article_id = etree.Element("article-id")
     article_id.set("pub-id-type", "other")
     article_id.text = "00200"
     xml_file = etree.XML(XML_FILE_CONTENT)
     am_tag = xml_file.find(".//article-meta")
     am_tag.append(article_id)
     result = get_xml_data(etree.tostring(xml_file), "1806-907X-rba-53-01-1-8")
     self.assertEqual(result.get("order"), "00200")
 def test_get_xml_data_creates_etree_xml(self, mk_etree, MockSPS_Package):
     xml_content = XML_FILE_CONTENT
     MockParser = Mock()
     mk_etree.XMLParser.return_value = MockParser
     get_xml_data(xml_content, None)
     mk_etree.XML.assert_called_once_with(xml_content, MockParser)
 def test_get_xml_data_creates_etree_parser(self, mk_etree,
                                            MockSPS_Package):
     get_xml_data(XML_FILE_CONTENT, None)
     mk_etree.XMLParser.assert_called_once_with(remove_blank_text=True,
                                                no_network=True)
Ejemplo n.º 9
0
 def test_get_xml_data_returns_order_with_fpage_when_there_is_no_order_in_xml_content(
         self):
     xml_content = XML_FILE_CONTENT
     result = get_xml_data(xml_content, "1806-907X-rba-53-01-1-8")
     self.assertEqual(result.get("order"), "00001")