Skip to content
Snippets Groups Projects

Hotline 6.42

Merged Patrick Barroca requested to merge hotline_6.42 into master
Compare and
+ 145
37
Preferences
Compare changes
Files
@@ -357,31 +357,68 @@ abstract class NoticeIntegrationMarc21ToUnimarcTest extends NoticeIntegrationAbs
class NoticeIntegrationMarc21CoupCavalierToUnimarcTest extends NoticeIntegrationAbstract {
protected $_id_profil_donnees = 150; //MARC21 DYNIX
public function setUp() {
parent::setUp();
$this->_mock_sql
->whenCalled('fetchEnreg')
->with('Select * from profil_donnees where id_profil=150')
->answers(
['id_profil' => 150,
'libelle' => 'MARC21 Dynix',
'accents' => '4',
'rejet_periodiques' => '1',
'id_article_periodique' => '0',
'type_fichier' => '0',
'format' => '6',
'attributs' => 'a:7:{i:0;a:8:{s:8:"type_doc";a:12:{i:0;a:3:{s:4:"code";s:1:"0";s:5:"label";s:0:"";s:8:"zone_995";s:0:"";}i:1;a:3:{s:4:"code";s:1:"1";s:5:"label";s:5:"am;na";s:8:"zone_995";s:22:"LIV;MS;LDV;LVI;LV;LIVC";}i:2;a:3:{s:4:"code";s:1:"2";s:5:"label";s:2:"as";s:8:"zone_995";s:12:"PER;REVC;REV";}i:3;a:3:{s:4:"code";s:1:"3";s:5:"label";s:3:"i;j";s:8:"zone_995";s:17:"CD;LIVCD;LIVK7;K7";}i:4;a:3:{s:4:"code";s:1:"4";s:5:"label";s:1:"g";s:8:"zone_995";s:25:"DIAPO;DVD;VHS;VHD;VD;DVDJ";}i:5;a:3:{s:4:"code";s:1:"5";s:5:"label";s:3:"l;m";s:8:"zone_995";s:3:"CDR";}i:6;a:3:{s:4:"code";s:1:"7";s:5:"label";s:0:"";s:8:"zone_995";s:7:"LCA;LCD";}i:7;a:3:{s:4:"code";s:1:"8";s:5:"label";s:0:"";s:8:"zone_995";s:3:"DOS";}i:8;a:3:{s:4:"code";s:1:"9";s:5:"label";s:0:"";s:8:"zone_995";s:0:"";}i:9;a:3:{s:4:"code";s:2:"10";s:5:"label";s:0:"";s:8:"zone_995";s:6:"WEB;MF";}i:10;a:3:{s:4:"code";s:2:"11";s:5:"label";s:0:"";s:8:"zone_995";s:2:"JV";}i:11;a:3:{s:4:"code";s:3:"100";s:5:"label";s:0:"";s:8:"zone_995";s:0:"";}}s:17:"champ_code_barres";s:3:"999";s:10:"champ_cote";s:1:"k";s:14:"champ_type_doc";s:1:"r";s:11:"champ_genre";s:0:"";s:13:"champ_section";s:1:"z";s:17:"champ_emplacement";s:1:"u";s:12:"champ_annexe";s:1:"b";}i:1;a:1:{s:6:"champs";s:0:"";}i:2;a:1:{s:6:"champs";s:0:"";}i:3;a:1:{s:6:"champs";s:0:"";}i:5;a:3:{s:6:"champs";s:0:"";s:17:"xml_balise_abonne";s:0:"";s:17:"xml_champs_abonne";a:11:{s:6:"IDABON";s:0:"";s:9:"ORDREABON";s:0:"";s:3:"NOM";s:0:"";s:6:"PRENOM";s:0:"";s:9:"NAISSANCE";s:0:"";s:8:"PASSWORD";s:0:"";s:4:"MAIL";s:0:"";s:10:"DATE_DEBUT";s:0:"";s:8:"DATE_FIN";s:0:"";s:7:"ID_SIGB";s:0:"";s:9:"NUM_CARTE";s:0:"";}}i:4;a:5:{s:4:"zone";s:3:"995";s:5:"champ";s:1:"v";s:6:"format";s:1:"3";s:5:"jours";s:0:"";s:7:"valeurs";s:1:"n";}i:6;a:2:{s:4:"zone";s:3:"901";s:5:"champ";s:1:"a";}}'
])
->whenCalled('fetchAll')
->with('select * from codif_section', false)
->answers([
['id_section' => 2,
'regles' => '996$z=ADU']
]);
$this->notice_marc21 = new notice_marc21();
$this->notice_marc21->ouvrirNotice(file_get_contents(dirname(__FILE__)."/marc21_coup_cavalier.txt"), 0);
$this->notice_sgbd->ouvrirNotice($this->notice_marc21->getFullRecord());
$this->notice_marc21->ouvrirNotice(file_get_contents(dirname(__FILE__)."/marc21_coup_cavalier.txt"), $this->_id_profil_donnees);
$this->notice_data = $this->notice_marc21->getNoticeIntegration();
}
/** @test */
public function zone200AShouldBeLeCoupDuCavalier() {
$this->assertEquals('Le coup du cavalier', $this->notice_sgbd->get_subfield('200', 'a')[0]);
$this->assertEquals('Le coup du cavalier', $this->notice_marc21->get_subfield('200', 'a')[0]);
}
/** @test */
public function zone210CShouldBeEditeurMetailie() {
$this->assertEquals('Métailié,', $this->notice_sgbd->get_subfield('210', 'c')[0]);
$this->assertEquals('Métailié,', $this->notice_marc21->get_subfield('210', 'c')[0]);
}
/** @test */
public function zone996iShouldBe00715585() {
$this->assertEquals('00715585', $this->notice_marc21->get_subfield('996', 'i')[0]);
}
/** @test */
public function sectionShouldHaveId2() {
$this->assertEquals(2, $this->notice_data['exemplaires'][0]['section']);
}
/** @test */
public function getAllShouldReturnAllFields() {
$all = $this->notice_sgbd->getAll();
$all = $this->notice_marc21->getAll();
$this->assertEquals('Le coup du cavalier', $all['titre_princ']);
$this->assertEquals([ ['Longueur de la notice', 805],
$this->assertEquals([ ['Longueur de la notice', 804],
['Statut de la notice', 'n'],
['Type de document', 'am'],
['Niveau hiérarchique', 0],
@@ -630,4 +667,5 @@ class NoticeIntegrationDimancheALaPiscineTest extends NoticeIntegrationAbstract
}
}
?>