Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Add a test for appendField and prependField, for data fields and cont…

…rol fields

git-svn-id: https://svn.php.net/repository/pear/packages/File_MARC/trunk@293541 c90b9560-bf6c-de11-be94-00142212c4b1
  • Loading branch information...
commit 6518ef0df127670c806da3c4dc1320849fd9ae2f 1 parent c294b56
Dan Scott authored
Showing with 155 additions and 3 deletions.
  1. +3 −3 package.xml
  2. +152 −0 tests/marc_014.phpt
View
6 package.xml
@@ -30,9 +30,8 @@ This package is based on the PHP MARC package, originally called "php-marc", tha
</stability>
<license uri="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General Public License</license>
<notes>
-0.4.4-beta
- * Enable MARCXML to handle bad tags, to match MARC
- * Handle corner case where only one indicator might have been provided
+0.4.5-beta
+ * Add a unit test for appending and prepending control fields and data fields
</notes>
<contents>
<dir name="/" baseinstalldir="File">
@@ -73,6 +72,7 @@ This package is based on the PHP MARC package, originally called "php-marc", tha
<file name="marc_011.phpt" role="test" />
<file name="marc_012.phpt" role="test" />
<file name="marc_013.phpt" role="test" />
+ <file name="marc_014.phpt" role="test" />
<file name="marc_16783.phpt" role="test" />
<file name="marc_field_001.phpt" role="test" />
<file name="marc_field_002.phpt" role="test" />
View
152 tests/marc_014.phpt
@@ -0,0 +1,152 @@
+--TEST--
+marc_100: Add fields to a MARC record
+--FILE--
+<?php
+$dir = dirname(__FILE__);
+require 'File/MARC.php';
+
+// Get ourselves a MARC record
+$marc_file = new File_MARC($dir . '/' . 'example.mrc');
+$marc_record = $marc_file->next();
+
+// create some subfields
+$subfields[] = new File_MARC_Subfield('a', 'nothing');
+$subfields[] = new File_MARC_Subfield('z', 'everything');
+
+// create a data field
+$data_field = new File_MARC_Data_Field('100', $subfields, '0');
+
+// append the data field
+$marc_record->appendField($data_field);
+
+// create a control field
+$ctrl_field = new File_MARC_Control_Field('001', '01234567890');
+
+// prepend the control field
+$marc_record->prependField($ctrl_field);
+
+// let's see the results
+print $marc_record;
+print "\n";
+
+?>
+--EXPECT--
+LDR 01850 2200517 4500
+001 01234567890
+001 0000000044
+003 EMILDA
+008 980120s1998 fi j 000 0 swe
+020 _a9515008808
+ _cFIM 72:00
+035 _99515008808
+040 _aNB
+042 _9NB
+ _9SEE
+084 _aHcd,u
+ _2kssb/6
+084 _5NB
+ _auHc
+ _2kssb
+084 _5SEE
+ _aHcf
+ _2kssb/6
+084 _5Q
+ _aHcd,uf
+ _2kssb/6
+100 1 _aJansson, Tove,
+ _d1914-2001
+245 04 _aDet osynliga barnet och andra berättelser /
+ _cTove Jansson
+250 _a7. uppl.
+260 _aHelsingfors :
+ _bSchildt,
+ _c1998 ;
+ _e(Falun :
+ _fScandbook)
+300 _a166, [4] s. :
+ _bill. ;
+ _c21 cm
+440 0 _aMumin-biblioteket,
+ _x99-0698931-9
+500 _aOriginaluppl. 1962
+599 _aLi: S
+740 4 _aDet osynliga barnet
+775 1 _z951-50-0385-7
+ _w9515003857
+ _907
+841 _5Li
+ _axa
+ _b0201080u 0 4000uu |000000
+ _e1
+841 _5SEE
+ _axa
+ _b0201080u 0 4000uu |000000
+ _e1
+841 _5L
+ _axa
+ _b0201080u 0 4000uu |000000
+ _e1
+841 _5NB
+ _axa
+ _b0201080u 0 4000uu |000000
+ _e1
+841 _5Q
+ _axa
+ _b0201080u 0 4000uu |000000
+ _e1
+841 _5S
+ _axa
+ _b0201080u 0 4000uu |000000
+ _e1
+852 _5NB
+ _bNB
+ _cNB98:12
+ _hplikt
+ _jR, 980520
+852 _5Li
+ _bLi
+ _cCNB
+ _hh,u
+852 _5SEE
+ _bSEE
+852 _5Q
+ _bQ
+ _j98947
+852 _5L
+ _bL
+ _c0100
+ _h98/
+ _j3043 H
+852 _5S
+ _bS
+ _hSv97
+ _j7235
+900 1s _aYanson, Tobe,
+ _d1914-2001
+ _uJansson, Tove,
+ _d1914-2001
+900 1s _aJanssonová, Tove,
+ _d1914-2001
+ _uJansson, Tove,
+ _d1914-2001
+900 1s _aJansone, Tuve,
+ _d1914-2001
+ _uJansson, Tove,
+ _d1914-2001
+900 1s _aJanson, Tuve,
+ _d1914-2001
+ _uJansson, Tove,
+ _d1914-2001
+900 1s _aJansson, Tuve,
+ _d1914-2001
+ _uJansson, Tove,
+ _d1914-2001
+900 1s _aJanssonova, Tove,
+ _d1914-2001
+ _uJansson, Tove,
+ _d1914-2001
+976 2 _aHcd,u
+ _bSkönlitteratur
+005 20050204111518.0
+100 0 _anothing
+ _zeverything
Please sign in to comment.
Something went wrong with that request. Please try again.