From 50629e431a355670459152f8711d49962d33f364 Mon Sep 17 00:00:00 2001
From: pbarroca <pbarroca@afi-sa.fr>
Date: Thu, 24 Sep 2015 19:00:13 +0200
Subject: [PATCH] rel #24999 : fix test failure

---
 .../tests/php/classes/NoticeUnimarcTest.php   | 87 +++++++++----------
 1 file changed, 41 insertions(+), 46 deletions(-)

diff --git a/cosmogramme/tests/php/classes/NoticeUnimarcTest.php b/cosmogramme/tests/php/classes/NoticeUnimarcTest.php
index 6b5702bd477..6ab7b880324 100644
--- a/cosmogramme/tests/php/classes/NoticeUnimarcTest.php
+++ b/cosmogramme/tests/php/classes/NoticeUnimarcTest.php
@@ -23,6 +23,8 @@ require_once 'classe_notice_integration.php';
 require_once 'classe_notice_marc21.php';
 require_once 'classe_unimarc.php';
 require_once 'ModelTestCase.php';
+require_once 'NoticeIntegrationTest.php';
+
 
 
 class NoticeUnimarcThesaurusFieldTest extends ModelTestCase {
@@ -37,19 +39,10 @@ class NoticeUnimarcThesaurusFieldTest extends ModelTestCase {
 
 
 /** @see http://forge.afi-sa.fr/issues/24999 */
-class NoticeUnimarcMultipleIsbnTest extends ModelTestCase {
-  protected $_record;
-
-
-  public function setUp() {
-    parent::setUp();
-    Storm_Model_Loader::defaultToVolatile();
+class NoticeUnimarcMultipleIsbnTest extends NoticeIntegrationTestCase {
 
-    $this->fixture('Class_CosmoVar',
-                   ['id' => 'types_docs',
-                    'liste' => "0:non identifié\r\n1:livres\r\n2:périodiques\r\n3:disques\r\n4:DVD\r\n5:cédéroms\r\n8:articles cms\r\n9:fils rss\r\n10:sites internet\r\n100:Livre Numérique\r\n101:Diaporamas\r\n102:Type doc\r\n103:OAI\r\n104:Type doc\r\n105:Formation Vodéclic\r\n106:Livres Numériques\r\n107:Vidéos à la demande\r\n108:Tout apprendre\r\n109:Enregistrement audio\r\n110:Numérique Premium"]);
-
-    $type_doc = [['code' => '0',  'label' => '',       'zone_995' => '' ],
+  public function getProfilDonnees() {
+		$type_doc = [['code' => '0',  'label' => '',       'zone_995' => '' ],
                  ['code' => '1',  'label' => 'am;na',  'zone_995' => 'LIVR' ],
                  ['code' => '2',  'label' => 'as',     'zone_995' => 'PERI'],
                  ['code' => '3',  'label' => 'i;j',    'zone_995' => 'DISQ'],
@@ -67,30 +60,40 @@ class NoticeUnimarcMultipleIsbnTest extends ModelTestCase {
                  ['code' => '15', 'label' => '',       'zone_995' => ''],
                  ['code' => '31', 'label' => '',       'zone_995' => 'RG']];
 
-    $this->fixture('Class_IntProfilDonnees',
-                   ['id' => '408',
-                    'libelle' => 'Unimarc Koha',
-                    'accents' => Class_IntProfilDonnees::ENCODING_UTF8,
-                    'rejet_periodiques' =>  0,
-                    'id_article_periodique' => Class_IntProfilDonnees::SERIAL_FORMAT_NONE,
-                    'type_fichier' => Class_IntProfilDonnees::FT_RECORDS,
-                    'format' => Class_IntProfilDonnees::FORMAT_UNIMARC,
-                    'attributs' => [
-                                    ['type_doc' => $type_doc,
-                                     Class_IntProfilDonnees::FIELD_ITEM_BARCODE => 'f',
-                                     Class_IntProfilDonnees::FIELD_ITEM_COTE => 'k',
-                                     Class_IntProfilDonnees::FIELD_ITEM_TYPE_DOC => 'r',
-                                     Class_IntProfilDonnees::FIELD_ITEM_GENRE => 'l',
-                                     Class_IntProfilDonnees::FIELD_ITEM_SECTION => 'q',
-                                     Class_IntProfilDonnees::FIELD_ITEM_EMPLACEMENT => 'c',
-                                     Class_IntProfilDonnees::FIELD_ITEM_ANNEXE => 'b'
-                                    ],
-                                    ['zone' => '099',
-                                     'champ' => 'n',
-                                     'format' => Class_IntProfilDonnees::NOVELTY_DATE_FORMAT_VALUES,
-                                     'jours' => '15',
-                                     'valeurs' => '1']
-                    ]]);
+    return $this->fixture('Class_IntProfilDonnees',
+                          ['id' => '408',
+                           'libelle' => 'Unimarc Koha',
+                           'accents' => Class_IntProfilDonnees::ENCODING_UTF8,
+                           'rejet_periodiques' =>  0,
+                           'id_article_periodique' => Class_IntProfilDonnees::SERIAL_FORMAT_NONE,
+                           'type_fichier' => Class_IntProfilDonnees::FT_RECORDS,
+                           'format' => Class_IntProfilDonnees::FORMAT_UNIMARC,
+                           'attributs' => [
+                                           ['type_doc' => $type_doc,
+                                            Class_IntProfilDonnees::FIELD_ITEM_BARCODE => 'f',
+                                            Class_IntProfilDonnees::FIELD_ITEM_COTE => 'k',
+                                            Class_IntProfilDonnees::FIELD_ITEM_TYPE_DOC => 'r',
+                                            Class_IntProfilDonnees::FIELD_ITEM_GENRE => 'l',
+                                            Class_IntProfilDonnees::FIELD_ITEM_SECTION => 'q',
+                                            Class_IntProfilDonnees::FIELD_ITEM_EMPLACEMENT => 'c',
+                                            Class_IntProfilDonnees::FIELD_ITEM_ANNEXE => 'b'
+                                           ],
+                                           ['zone' => '099',
+                                            'champ' => 'n',
+                                            'format' => Class_IntProfilDonnees::NOVELTY_DATE_FORMAT_VALUES,
+                                            'jours' => '15',
+                                            'valeurs' => '1']
+                           ]])
+                ->getRawAttributes();
+	}
+
+
+  public function setUp() {
+    parent::setUp();
+
+    $this->fixture('Class_CosmoVar',
+                   ['id' => 'types_docs',
+                    'liste' => "0:non identifié\r\n1:livres\r\n2:périodiques\r\n3:disques\r\n4:DVD\r\n5:cédéroms\r\n8:articles cms\r\n9:fils rss\r\n10:sites internet\r\n100:Livre Numérique\r\n101:Diaporamas\r\n102:Type doc\r\n103:OAI\r\n104:Type doc\r\n105:Formation Vodéclic\r\n106:Livres Numériques\r\n107:Vidéos à la demande\r\n108:Tout apprendre\r\n109:Enregistrement audio\r\n110:Numérique Premium"]);
 
     $codif_type_doc = $this->fixture('Class_CodifTypeDoc',
                                      ['id' => 31,
@@ -102,20 +105,12 @@ class NoticeUnimarcMultipleIsbnTest extends ModelTestCase {
                     'label' => 'Romans gros caractères',
                     'codif_type_doc' => $codif_type_doc]);
 
-    $record = new notice_unimarc();
-    $record->ouvrirNotice(file_get_contents(__DIR__ . '/unimarc_multi_isbn.txt'), 408);
-    $this->_record = $record->getNoticeIntegration();
-  }
-
-
-  public function tearDown() {
-    Storm_Model_Loader::defaultToDb();
-    parent::tearDown();
+    $this->loadNotice('unimarc_multi_isbn');
   }
 
 
   /** @test */
   public function withTwoIsbnsShouldKeepIsbn13() {
-    $this->assertEquals('978-2-8401-1742-1', $this->_record['isbn']);
+    $this->assertEquals('978-2-8401-1742-1', Class_Notice::find(1)->getIsbn());
   }
 }
\ No newline at end of file
-- 
GitLab