def _get_bundle_id(kernel_front_data): """ Retorna o bundle_id do fascículo a partir dos dados provenientes do kernel front """ article_meta = _nestget(kernel_front_data, "article_meta", 0) issue = _nestget(article_meta, "pub_issue", 0) number, supplement = extract_number_and_supplment_from_issue_element(issue) volume = _nestget(article_meta, "pub_volume", 0) scielo_pid_v2 = _nestget(article_meta, "scielo_pid_v2", 0) issn_id = scielo_pid_v2[1:10] year = _get_bundle_pub_year(_nestget(kernel_front_data, "pub_date")) return get_bundle_id(issn_id, year, volume or None, number or None, supplement or None)
def test_number_and_suppl_for_supp5_1(self): expected = "supp5", "1" result = extract_number_and_supplment_from_issue_element("supp5 1") self.assertEqual(expected, result)
def test_number_and_suppl_for_suppl_5_pr(self): expected = None, "5pr" result = extract_number_and_supplment_from_issue_element("suppl 5 pr") self.assertEqual(expected, result)
def test_number_and_suppl_for_spepr(self): expected = "spepr", None result = extract_number_and_supplment_from_issue_element("spepr") self.assertEqual(expected, result)
def test_number_and_suppl_for_suppl_1hyphen2(self): expected = None, "1-2" result = extract_number_and_supplment_from_issue_element("suppl 1-2") self.assertEqual(expected, result)
def test_number_and_suppl_for_Suppl(self): expected = None, "0" result = extract_number_and_supplment_from_issue_element("Suppl") self.assertEqual(expected, result)
def test_number_and_suppl_for_2_hyphen_5_suppl_1(self): expected = "2-5", "1" result = extract_number_and_supplment_from_issue_element("2-5 suppl 1") self.assertEqual(expected, result)
def test_number_and_suppl_for_5_parenteses_suppl(self): expected = "5", "0" result = extract_number_and_supplment_from_issue_element("5 (suppl)") self.assertEqual(expected, result)