def test_row_bib(): # Vérifie que les métadonnées en entrée d'une notice BIB # sont bien récupérées record = funcs.Bib_record( [ "315756", "FRBNF435361100000003", "", "978-2-213-67203-8", "", "Mon Paris, ma mémoire", "Morin Edgar", "DL 2013", "", "Fayard" ], 1 ) record2 = funcs.Bib_record( [ "1/104953", "(moccam)frbnf43632681", "", "978-2-7436-2583-2", "9782743625832", "Faillir être flingué roman", "celine minard", "2013(©)", "", "Payot Rivages" ], 1 ) assert record.NumNot == "315756" assert record.frbnf.propre == "frbnf435361100000003" assert record.ark_init == "" assert record.isbn.init == "978-2-213-67203-8" assert record.ean.init == "" assert record.titre.init == "Mon Paris, ma mémoire" assert record.titre_nett == "monparismamemoire" assert record.auteur == "Morin Edgar" assert record.auteur_nett == "morin edgar" assert record.date_nett == "2013" assert record.publisher_nett == "fayard" assert record2.frbnf.propre == "frbnf43632681"
def test_domybiblio_1_answer(): """ Si une seule réponse de DoMyBiblio, l'API plante et Bibliostratus parse alors la version HTML On vérifie que le PPN est correctement récupéré """ record = funcs.Bib_record([ "15108805", "", "", "", "", "Législation industrielle Licence 3ème année 1941/42", "amiaud andre", "1941", "", "Cours de droit" ], 1) param = {"preferences_alignement": 2} ppn = bib2id.tad2ppn(record, param) assert ppn == "PPN015108805" or ppn == ""
def test_alignement_bib(): # Teste sur des notices bibliographiques # avec divers types de notices et d'options bib_records = { "TEX1": { "input_record": funcs.Bib_record([ "315756", "", "", "978-2-213-67203-8", "", "Mon Paris, ma mémoire", "Morin Edgar", "DL 2013", "", "Fayard" ], 1) }, "TEX2": { "input_record": funcs.Bib_record([ "1/104953", "", "", "978-2-7436-2583-2", "9782743625832", "Faillir être flingué roman", "celine minard", "2013(©)", "", "Payot Rivages" ], 1) }, "AUD1": { "input_record": funcs.Bib_record([ "754134", "", "", "", "3329184688321", "La grande nuit de l 'Opéra 1958", "maria georges mars callas jean-pierre paris lance choeur orchestre albert de national opera sebastian hurteau jacques", "2010", "Institut national de l'audiovisuel" ], 3) }, "PER1": { "input_record": funcs.Bib_record([ "616", "", "", "2267-8417", "Fisheye le magazine lifestyle de la photographie", "", "2013-", "Paris" ], 4) }, "PER2": { "input_record": funcs.Bib_record([ "629", "FRBNF391212190000007", "", "", "Arts magazine", "", "2005-2016 2006-2016", "" ], 4) } } param_alignBnF = { "preferences_alignement": 1, "kwsudoc_option": 1, "meta_bib": 0, "meta_bnf": 0, "stats": defaultdict(int) } param_alignSudoc = { "preferences_alignement": 2, "kwsudoc_option": 1, "meta_bib": 1, "meta_bnf": 0, "stats": defaultdict(int) } for record in bib_records: bib_records[record]["alignment_resultBnF"] = bib2id.item_alignement( bib_records[record]["input_record"], param_alignBnF) bib_records[record]["alignment_resultSudoc"] = bib2id.item_alignement( bib_records[record]["input_record"], param_alignSudoc) assert bib_records["TEX1"]["input_record"].alignment_method == [ 'ISBN + contrôle Titre 200$a', 'isbn2ppn + contrôle Titre 200$a' ] assert bib_records["TEX1"][ "alignment_resultBnF"].alignment_method_str == "ISBN + contrôle Titre 200$a" assert bib_records["TEX1"][ "alignment_resultBnF"].ids_str == "ark:/12148/cb43536110d" assert bib_records["TEX1"][ "alignment_resultSudoc"].ids_str == "PPN168081768" assert bib_records["AUD1"][ "alignment_resultBnF"].ids_str == "ark:/12148/cb423235808" assert bib_records["AUD1"][ "alignment_resultSudoc"].ids_str == "ark:/12148/cb423235808" assert bib_records["PER1"][ "alignment_resultBnF"].alignment_method_str == "ISSN" assert bib_records["PER1"][ "alignment_resultBnF"].ids_str == "ark:/12148/cb43619642w" assert bib_records["PER1"][ "alignment_resultSudoc"].ids_str == "PPN174256019" assert bib_records["PER2"][ "alignment_resultBnF"].ids_str == "ark:/12148/cb39121219d" assert bib_records["PER2"][ "alignment_resultBnF"].alignment_method_str == "Numéro de notice + contrôle Titre 200$a" assert bib_records["PER2"][ "alignment_resultSudoc"].ids_str == "ark:/12148/cb39121219d"