marc4j4r 0.1.6 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/README.rdoc +17 -0
  2. data/Rakefile +26 -13
  3. data/VERSION +1 -1
  4. data/jars/marc4j.jar +0 -0
  5. data/lib/marc4j4r/controlfield.rb +32 -0
  6. data/lib/marc4j4r/datafield.rb +196 -0
  7. data/lib/marc4j4r/reader.rb +71 -0
  8. data/lib/marc4j4r/record.rb +214 -0
  9. data/lib/marc4j4r/writer.rb +29 -0
  10. data/lib/marc4j4r.rb +26 -485
  11. data/lib/original_monolithic_file.rb +518 -0
  12. data/spec/batch.dat +1 -0
  13. data/spec/batch.txt +193 -0
  14. data/spec/batch.xml +13 -0
  15. data/spec/controlfield_spec.rb +40 -0
  16. data/spec/datafield_spec.rb +56 -0
  17. data/spec/one.dat +1 -0
  18. data/spec/one.txt +17 -0
  19. data/spec/one.xml +4 -0
  20. data/spec/reader_spec.rb +49 -0
  21. data/spec/record_spec.rb +101 -0
  22. data/{test/helper.rb → spec/spec_helper.rb} +9 -5
  23. metadata +74 -80
  24. data/.document +0 -5
  25. data/.gitignore +0 -21
  26. data/README.markdown +0 -41
  27. data/doc/ControlFieldImpl.html +0 -314
  28. data/doc/DataFieldImpl.html +0 -875
  29. data/doc/Java/OrgMarc4j/MarcReader.html +0 -184
  30. data/doc/MARC4J4R/Reader.html +0 -245
  31. data/doc/MARC4J4R.html +0 -281
  32. data/doc/RecordImpl.html +0 -686
  33. data/doc/SubfieldImpl.html +0 -252
  34. data/doc/_index.html +0 -153
  35. data/doc/class_list.html +0 -36
  36. data/doc/css/common.css +0 -1
  37. data/doc/css/full_list.css +0 -50
  38. data/doc/css/style.css +0 -268
  39. data/doc/file.README.html +0 -90
  40. data/doc/file_list.html +0 -38
  41. data/doc/frames.html +0 -13
  42. data/doc/index.html +0 -90
  43. data/doc/js/app.js +0 -99
  44. data/doc/js/full_list.js +0 -106
  45. data/doc/js/jquery.js +0 -19
  46. data/doc/method_list.html +0 -219
  47. data/doc/top-level-namespace.html +0 -87
  48. data/jars/MarcImporter.jar +0 -0
  49. data/test/batch.seq +0 -118
  50. data/test/bench.rb +0 -63
  51. data/test/one.dat +0 -1
  52. data/test/one.seq +0 -30
  53. data/test/one.xml +0 -55
  54. data/test/test_marc4j4r.rb +0 -76
data/spec/batch.txt ADDED
@@ -0,0 +1,193 @@
1
+ LEADER 00755cam 22002414a 4500
2
+ 001 fol05731351
3
+ 003 IMchF
4
+ 005 20000613133448.0
5
+ 008 000107s2000 nyua 001 0 eng
6
+ 010 $a 00020737
7
+ 020 $a 0471383147 (paper/cd-rom : alk. paper)
8
+ 040 $a DLC $c DLC $d DLC
9
+ 042 $a pcc
10
+ 050 00 $a QA76.73.P22 $b M33 2000
11
+ 082 00 $a 005.13/3 $2 21
12
+ 100 1 $a Martinsson, Tobias, $d 1976-
13
+ 245 10 $a ActivePerl with ASP and ADO / $c Tobias Martinsson.
14
+ 260 $a New York : $b John Wiley & Sons, $c 2000.
15
+ 300 $a xxi, 289 p. : $b ill. ; $c 23 cm. + $e 1 computer laser disc (4 3/4 in.)
16
+ 500 $a "Wiley Computer Publishing."
17
+ 630 00 $a Active server pages.
18
+ 630 00 $a ActiveX.
19
+ 650 0 $a Perl (Computer program language)
20
+
21
+ LEADER 00647pam 2200241 a 4500
22
+ 001 fol05754809
23
+ 003 IMchF
24
+ 005 20000601115601.0
25
+ 008 000203s2000 mau 001 0 eng
26
+ 010 $a 00022023
27
+ 020 $a 1565926994
28
+ 040 $a DLC $c DLC $d DLC
29
+ 042 $a pcc
30
+ 050 00 $a QA76.73.P22 $b D47 2000
31
+ 082 00 $a 005.74 $2 21
32
+ 100 1 $a Descartes, Alligator.
33
+ 245 10 $a Programming the Perl DBI / $c Alligator Descartes and Tim Bunce.
34
+ 260 $a Cmabridge, MA : $b O'Reilly, $c 2000.
35
+ 263 $a 1111
36
+ 300 $a p. cm.
37
+ 650 0 $a Perl (Computer program language)
38
+ 650 0 $a Database management.
39
+ 700 1 $a Bunce, Tim.
40
+
41
+ LEADER 00605cam 22002054a 4500
42
+ 001 fol05843555
43
+ 003 IMchF
44
+ 005 20000525142739.0
45
+ 008 000318s1999 cau b 001 0 eng
46
+ 010 $a 00501349
47
+ 040 $a DLC $c DLC $d DLC
48
+ 042 $a pcc
49
+ 050 00 $a QA76.73.P22 $b B763 1999
50
+ 082 00 $a 005.13/3 $2 21
51
+ 100 1 $a Brown, Martin C.
52
+ 245 10 $a Perl : $b programmer's reference / $c Martin C. Brown.
53
+ 260 $a Berkeley : $b Osborne/McGraw-Hill, $c c1999.
54
+ 300 $a xix, 380 p. ; $c 22 cm.
55
+ 504 $a Includes bibliographical references and index.
56
+ 650 0 $a Perl (Computer program language)
57
+
58
+ LEADER 00579cam 22002054a 4500
59
+ 001 fol05843579
60
+ 003 IMchF
61
+ 005 20000525142716.0
62
+ 008 000318s1999 caua 001 0 eng
63
+ 010 $a 00502116
64
+ 020 $a 0072120002
65
+ 040 $a DLC $c DLC $d DLC
66
+ 042 $a pcc
67
+ 050 00 $a QA76.73.P22 $b B762 1999
68
+ 082 00 $a 005.13/3 $2 21
69
+ 100 1 $a Brown, Martin C.
70
+ 245 10 $a Perl : $b the complete reference / $c Martin C. Brown.
71
+ 260 $a Berkeley : $b Osborne/McGraw-Hill, $c c1999.
72
+ 300 $a xxxv, 1179 p. : $b ill. ; $c 24 cm.
73
+ 650 0 $a Perl (Computer program language)
74
+
75
+ LEADER 00801nam 22002778a 4500
76
+ 001 fol05848297
77
+ 003 IMchF
78
+ 005 20000524125727.0
79
+ 008 000518s2000 mau 001 0 eng
80
+ 010 $a 00041664
81
+ 020 $a 1565924193
82
+ 040 $a DLC $c DLC
83
+ 042 $a pcc
84
+ 050 00 $a QA76.73.P22 $b G84 2000
85
+ 082 00 $a 005.2/762 $2 21
86
+ 100 1 $a Guelich, Scott.
87
+ 245 10 $a CGI programming with Perl / $c Scott Guelich, Shishir Gundavaram & Gunther Birznieks.
88
+ 250 $a 2nd ed., expanded & updated
89
+ 260 $a Cambridge, Mass. : $b O'Reilly, $c 2000.
90
+ 263 $a 0006
91
+ 300 $a p. cm.
92
+ 650 0 $a Perl (Computer program language)
93
+ 650 0 $a CGI (Computer network protocol)
94
+ 650 0 $a Internet programming.
95
+ 700 1 $a Gundavaram, Shishir.
96
+ 700 1 $a Birznieks, Gunther.
97
+
98
+ LEADER 00665nam 22002298a 4500
99
+ 001 fol05865950
100
+ 003 IMchF
101
+ 005 20000615103017.0
102
+ 008 000612s2000 mau 100 0 eng
103
+ 010 $a 00055759
104
+ 020 $a 0596000138
105
+ 040 $a DLC $c DLC
106
+ 042 $a pcc
107
+ 050 00 $a QA76.73.P22 $b P475 2000
108
+ 082 00 $a 005.13/3 $2 21
109
+ 111 2 $a Perl Conference 4.0 $d (2000 : $c Monterey, Calif.)
110
+ 245 10 $a Proceedings of the Perl Conference 4.0 : $b July 17-20, 2000, Monterey, California.
111
+ 250 $a 1st ed.
112
+ 260 $a Cambridge, Mass. : $b O'Reilly, $c 2000.
113
+ 263 $a 0006
114
+ 300 $a p. cm.
115
+ 650 0 $a Perl (Computer program language) $v Congresses.
116
+
117
+ LEADER 00579nam 22002178a 4500
118
+ 001 fol05865956
119
+ 003 IMchF
120
+ 005 20000615102948.0
121
+ 008 000612s2000 mau 000 0 eng
122
+ 010 $a 00055770
123
+ 020 $a 1565926099
124
+ 040 $a DLC $c DLC
125
+ 042 $a pcc
126
+ 050 00 $a QA76.73.P22 $b B43 2000
127
+ 082 00 $a 005.13/3 $2 21
128
+ 100 1 $a Blank-Edelman, David N.
129
+ 245 10 $a Perl for system administration / $c David N. Blank-Edelman.
130
+ 260 $a Cambridge, Mass. : $b O'Reilly, $c 2000.
131
+ 263 $a 0006
132
+ 300 $a p. cm.
133
+ 650 0 $a Perl (Computer program language)
134
+
135
+ LEADER 00661nam 22002538a 4500
136
+ 001 fol05865967
137
+ 003 IMchF
138
+ 005 20000615102611.0
139
+ 008 000614s2000 mau 000 0 eng
140
+ 010 $a 00055799
141
+ 020 $a 0596000278
142
+ 040 $a DLC $c DLC
143
+ 042 $a pcc
144
+ 050 00 $a QA76.73.P22 $b W35 2000
145
+ 082 00 $a 005.13/3 $2 21
146
+ 100 1 $a Wall, Larry.
147
+ 245 10 $a Programming Perl / $c Larry Wall, Tom Christiansen & Jon Orwant.
148
+ 250 $a 3rd ed.
149
+ 260 $a Cambridge, Mass. : $b O'Reilly, $c 2000.
150
+ 263 $a 0007
151
+ 300 $a p. cm.
152
+ 650 0 $a Perl (Computer program language)
153
+ 700 1 $a Christiansen, Tom.
154
+ 700 1 $a Orwant, Jon.
155
+
156
+ LEADER 00603cam 22002054a 4500
157
+ 001 fol05872355
158
+ 003 IMchF
159
+ 005 20000706095105.0
160
+ 008 000315s1999 njua 001 0 eng
161
+ 010 $a 00500678
162
+ 020 $a 013020868X
163
+ 040 $a DLC $c DLC $d DLC
164
+ 042 $a pcc
165
+ 050 00 $a QA76.73.P22 $b L69 1999
166
+ 082 00 $a 005.13/3 $2 21
167
+ 100 1 $a Lowe, Vincent $q (Vincent D.)
168
+ 245 10 $a Perl programmer's interactive workbook / $c Vincent Lowe.
169
+ 260 $a Upper Saddle River, NJ : $b Prentice Hall PTP, $c c1999.
170
+ 300 $a xx, 633 p. : $b ill. ; $c 23 cm.
171
+ 650 0 $a Perl (Computer program language)
172
+
173
+ LEADER 00696nam 22002538a 4500
174
+ 001 fol05882032
175
+ 003 IMchF
176
+ 005 20000707091904.0
177
+ 008 000630s2000 cau 001 0 eng
178
+ 010 $a 00058174
179
+ 020 $a 0764547291 (alk. paper)
180
+ 040 $a DLC $c DLC
181
+ 042 $a pcc
182
+ 050 00 $a QA76.73.P22 $b F64 2000
183
+ 082 00 $a 005.13/3 $2 21
184
+ 100 2 $a Foster-Johnson, Eric.
185
+ 245 10 $a Cross-platform Perl / $c Eric F. Johnson.
186
+ 260 $a Foster City, CA : $b IDG Books Worldwide, $c 2000.
187
+ 263 $a 0009
188
+ 300 $a p. cm.
189
+ 500 $a Includes index.
190
+ 650 0 $a Perl (Computer program language)
191
+ 650 0 $a Web servers.
192
+ 650 0 $a Cross-platform software development.
193
+
data/spec/batch.xml ADDED
@@ -0,0 +1,13 @@
1
+ <?xml version='1.0'?>
2
+ <collection xmlns='http://www.loc.gov/MARC21/slim' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd'>
3
+ <record><leader>00755cam 22002414a 4500</leader><controlfield tag='001'>fol05731351 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000613133448.0</controlfield><controlfield tag='008'>000107s2000 nyua 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00020737 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>0471383147 (paper/cd-rom : alk. paper)</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield><subfield code='d'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>M33 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Martinsson, Tobias,</subfield><subfield code='d'>1976-</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>ActivePerl with ASP and ADO /</subfield><subfield code='c'>Tobias Martinsson.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>New York :</subfield><subfield code='b'>John Wiley &amp; Sons,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>xxi, 289 p. :</subfield><subfield code='b'>ill. ;</subfield><subfield code='c'>23 cm. +</subfield><subfield code='e'>1 computer laser disc (4 3/4 in.)</subfield></datafield><datafield tag='500' ind1=' ' ind2=' '><subfield code='a'>&quot;Wiley Computer Publishing.&quot;</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield><datafield tag='630' ind1='0' ind2='0'><subfield code='a'>Active server pages.</subfield></datafield><datafield tag='630' ind1='0' ind2='0'><subfield code='a'>ActiveX.</subfield></datafield></record>
4
+ <record><leader>00647pam 2200241 a 4500</leader><controlfield tag='001'>fol05754809 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000601115601.0</controlfield><controlfield tag='008'>000203s2000 mau 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00022023 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>1565926994</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield><subfield code='d'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>D47 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.74</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Descartes, Alligator.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Programming the Perl DBI /</subfield><subfield code='c'>Alligator Descartes and Tim Bunce.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Cmabridge, MA :</subfield><subfield code='b'>O&apos;Reilly,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='263' ind1=' ' ind2=' '><subfield code='a'>1111</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>p. cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Database management.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Bunce, Tim.</subfield></datafield></record>
5
+ <record><leader>00605cam 22002054a 4500</leader><controlfield tag='001'>fol05843555 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000525142739.0</controlfield><controlfield tag='008'>000318s1999 cau b 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00501349 </subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield><subfield code='d'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>B763 1999</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Brown, Martin C.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Perl :</subfield><subfield code='b'>programmer&apos;s reference /</subfield><subfield code='c'>Martin C. Brown.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Berkeley :</subfield><subfield code='b'>Osborne/McGraw-Hill,</subfield><subfield code='c'>c1999.</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>xix, 380 p. ;</subfield><subfield code='c'>22 cm.</subfield></datafield><datafield tag='504' ind1=' ' ind2=' '><subfield code='a'>Includes bibliographical references and index.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield></record>
6
+ <record><leader>00579cam 22002054a 4500</leader><controlfield tag='001'>fol05843579 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000525142716.0</controlfield><controlfield tag='008'>000318s1999 caua 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00502116 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>0072120002</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield><subfield code='d'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>B762 1999</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Brown, Martin C.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Perl :</subfield><subfield code='b'>the complete reference /</subfield><subfield code='c'>Martin C. Brown.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Berkeley :</subfield><subfield code='b'>Osborne/McGraw-Hill,</subfield><subfield code='c'>c1999.</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>xxxv, 1179 p. :</subfield><subfield code='b'>ill. ;</subfield><subfield code='c'>24 cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield></record>
7
+ <record><leader>00801nam 22002778a 4500</leader><controlfield tag='001'>fol05848297 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000524125727.0</controlfield><controlfield tag='008'>000518s2000 mau 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00041664 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>1565924193</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>G84 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.2/762</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Guelich, Scott.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>CGI programming with Perl /</subfield><subfield code='c'>Scott Guelich, Shishir Gundavaram &amp; Gunther Birznieks.</subfield></datafield><datafield tag='250' ind1=' ' ind2=' '><subfield code='a'>2nd ed., expanded &amp; updated</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Cambridge, Mass. :</subfield><subfield code='b'>O&apos;Reilly,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='263' ind1=' ' ind2=' '><subfield code='a'>0006</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>p. cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>CGI (Computer network protocol)</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Internet programming.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Gundavaram, Shishir.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Birznieks, Gunther.</subfield></datafield></record>
8
+ <record><leader>00665nam 22002298a 4500</leader><controlfield tag='001'>fol05865950 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000615103017.0</controlfield><controlfield tag='008'>000612s2000 mau 100 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00055759 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>0596000138</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>P475 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='111' ind1='2' ind2=' '><subfield code='a'>Perl Conference 4.0</subfield><subfield code='d'>(2000 :</subfield><subfield code='c'>Monterey, Calif.)</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Proceedings of the Perl Conference 4.0 :</subfield><subfield code='b'>July 17-20, 2000, Monterey, California.</subfield></datafield><datafield tag='250' ind1=' ' ind2=' '><subfield code='a'>1st ed.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Cambridge, Mass. :</subfield><subfield code='b'>O&apos;Reilly,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='263' ind1=' ' ind2=' '><subfield code='a'>0006</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>p. cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield><subfield code='v'>Congresses.</subfield></datafield></record>
9
+ <record><leader>00579nam 22002178a 4500</leader><controlfield tag='001'>fol05865956 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000615102948.0</controlfield><controlfield tag='008'>000612s2000 mau 000 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00055770 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>1565926099</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>B43 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Blank-Edelman, David N.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Perl for system administration /</subfield><subfield code='c'>David N. Blank-Edelman.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Cambridge, Mass. :</subfield><subfield code='b'>O&apos;Reilly,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='263' ind1=' ' ind2=' '><subfield code='a'>0006</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>p. cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield></record>
10
+ <record><leader>00661nam 22002538a 4500</leader><controlfield tag='001'>fol05865967 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000615102611.0</controlfield><controlfield tag='008'>000614s2000 mau 000 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00055799 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>0596000278</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>W35 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Wall, Larry.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Programming Perl /</subfield><subfield code='c'>Larry Wall, Tom Christiansen &amp; Jon Orwant.</subfield></datafield><datafield tag='250' ind1=' ' ind2=' '><subfield code='a'>3rd ed.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Cambridge, Mass. :</subfield><subfield code='b'>O&apos;Reilly,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='263' ind1=' ' ind2=' '><subfield code='a'>0007</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>p. cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Christiansen, Tom.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Orwant, Jon.</subfield></datafield></record>
11
+ <record><leader>00603cam 22002054a 4500</leader><controlfield tag='001'>fol05872355 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000706095105.0</controlfield><controlfield tag='008'>000315s1999 njua 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00500678 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>013020868X</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield><subfield code='d'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>L69 1999</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='1' ind2=' '><subfield code='a'>Lowe, Vincent</subfield><subfield code='q'>(Vincent D.)</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Perl programmer&apos;s interactive workbook /</subfield><subfield code='c'>Vincent Lowe.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Upper Saddle River, NJ :</subfield><subfield code='b'>Prentice Hall PTP,</subfield><subfield code='c'>c1999.</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>xx, 633 p. :</subfield><subfield code='b'>ill. ;</subfield><subfield code='c'>23 cm.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield></record>
12
+ <record><leader>00696nam 22002538a 4500</leader><controlfield tag='001'>fol05882032 </controlfield><controlfield tag='003'>IMchF</controlfield><controlfield tag='005'>20000707091904.0</controlfield><controlfield tag='008'>000630s2000 cau 001 0 eng </controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'> 00058174 </subfield></datafield><datafield tag='020' ind1=' ' ind2=' '><subfield code='a'>0764547291 (alk. paper)</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield></datafield><datafield tag='042' ind1=' ' ind2=' '><subfield code='a'>pcc</subfield></datafield><datafield tag='050' ind1='0' ind2='0'><subfield code='a'>QA76.73.P22</subfield><subfield code='b'>F64 2000</subfield></datafield><datafield tag='082' ind1='0' ind2='0'><subfield code='a'>005.13/3</subfield><subfield code='2'>21</subfield></datafield><datafield tag='100' ind1='2' ind2=' '><subfield code='a'>Foster-Johnson, Eric.</subfield></datafield><datafield tag='245' ind1='1' ind2='0'><subfield code='a'>Cross-platform Perl /</subfield><subfield code='c'>Eric F. Johnson.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Foster City, CA :</subfield><subfield code='b'>IDG Books Worldwide,</subfield><subfield code='c'>2000.</subfield></datafield><datafield tag='263' ind1=' ' ind2=' '><subfield code='a'>0009</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>p. cm.</subfield></datafield><datafield tag='500' ind1=' ' ind2=' '><subfield code='a'>Includes index.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Perl (Computer program language)</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Web servers.</subfield></datafield><datafield tag='650' ind1=' ' ind2='0'><subfield code='a'>Cross-platform software development.</subfield></datafield></record>
13
+ </collection>
@@ -0,0 +1,40 @@
1
+ require 'spec_helper'
2
+
3
+ describe "MARC4J4R::ControlField basics" do
4
+ it "can create a controlfield via the alias" do
5
+ cf = MARC4J4R::ControlField.new('001')
6
+ cf.tag.should.equal '001'
7
+ end
8
+
9
+ it "allows get/set of tag and value" do
10
+ cf = MARC4J4R::ControlField.new
11
+ cf.tag = '001'
12
+ cf.value = 'Value'
13
+ cf.tag.should.equal '001'
14
+ cf.value.should.equal 'Value'
15
+ end
16
+
17
+ it "can create a cf with both arguments" do
18
+ cf = MARC4J4R::ControlField.new('001', 'Test')
19
+ cf.value.should.equal 'Test'
20
+ cf.tag.should.equal '001'
21
+ end
22
+
23
+ it "can identify good/bad tags" do
24
+ MARC4J4R::ControlField.control_tag?('000').should.equal true
25
+ MARC4J4R::ControlField.control_tag?('001').should.equal true
26
+ MARC4J4R::ControlField.control_tag?('009').should.equal true
27
+ MARC4J4R::ControlField.control_tag?('010').should.equal false
28
+ MARC4J4R::ControlField.control_tag?('011').should.equal false
29
+ end
30
+
31
+ it "provides a working ==" do
32
+ cf = MARC4J4R::ControlField.new('001', 'Test')
33
+ clone = MARC4J4R::ControlField.new('001', 'Test')
34
+ mutant = MARC4J4R::ControlField.new('001', 'DDDDD')
35
+ cf.should.equal clone
36
+ clone.should.equal cf
37
+ cf.should.not.equal mutant
38
+ mutant.should.not.equal clone
39
+ end
40
+ end
@@ -0,0 +1,56 @@
1
+ require 'spec_helper'
2
+
3
+ describe "MARC4J4R::DataField & SubField basics" do
4
+ it "proivdes a trivial ==" do
5
+ df1 = MARC4J4R::DataField.new('010', '1', '2')
6
+ df2 = MARC4J4R::DataField.new('010', '1', '2')
7
+
8
+ df1.should.equal df2
9
+ df2.should.equal df1
10
+
11
+ df3 = MARC4J4R::DataField.new('010', '0', '0')
12
+ df4 = MARC4J4R::DataField.new('011', '1', '2')
13
+
14
+ df1.should.not.equal df3
15
+ df1.should.not.equal df4
16
+ df3.should.not.equal df4
17
+ end
18
+
19
+ it "proivdes a deep ==" do
20
+ df1 = MARC4J4R::DataField.new('010', '1', '2')
21
+ df2 = MARC4J4R::DataField.new('010', '1', '2')
22
+ df3 = MARC4J4R::DataField.new('010', '1', '2')
23
+ df4 = MARC4J4R::DataField.new('010', '1', '2')
24
+ [df1, df2, df3, df4].each do |df|
25
+ df << MARC4J4R::SubField.new('a', 'one')
26
+ df << MARC4J4R::SubField.new('b', 'two')
27
+ df << MARC4J4R::SubField.new('c', 'three')
28
+ end
29
+ df3 << MARC4J4R::SubField.new('d', 'four')
30
+ df4 << MARC4J4R::SubField.new('d', 'five')
31
+ df1.should.equal df2
32
+ df2.should.equal df1
33
+ df1.should.not.equal df3
34
+ df1.should.equal df1
35
+ df3.should.equal df3
36
+ df3.should.not.equal df4
37
+ end
38
+
39
+ it "can round-trip tags and indicators" do
40
+ df = MARC4J4R::DataField.new('010', '1', '2')
41
+ df.tag.should.equal '010'
42
+ df.ind1.should.equal '1'
43
+ df.ind2.should.equal '2'
44
+ df.ind1 = '0'
45
+ df.ind1.should.equal '0'
46
+ end
47
+
48
+
49
+ it "should defalt to spaces in ind1/ind2" do
50
+ df = MARC4J4R::DataField.new('010')
51
+ df.ind1.should.equal ' '
52
+ df.ind2.should.equal ' '
53
+ end
54
+ end
55
+
56
+
data/spec/one.dat ADDED
@@ -0,0 +1 @@
1
+ 00734njm a2200217uu 4500001001500000003000400015005001700019007001500036008004100051010001900092040001300111245006800124260002600192300005600218651004500274700005400319700005500373700003000428852005000458852000800508afc99990058366DLC20071104155141.9sd ummunniauub071103s1939 xxufmnne||||||||| u eng|| aafc99990058366 aDLCcDLC04aThe Texas rangerh[sound recording] /cSung by Beale D. Taylor. aMedina, Texas,c1939. a1 sound disc :banalog, 33 1/3 rpm, mono. ;c12 in. 0aMedinazTexaszUnited States of America.1 aLomax, John Avery, 1867-1948eRecording engineer.1 aLomax, Ruby T. (Ruby Terrill)eRecording engineer.1 aTaylor, Beale D.eSinger. aAmerican Folklife Center, Library of Congress aDLC
data/spec/one.txt ADDED
@@ -0,0 +1,17 @@
1
+ LEADER 00734njm a2200217uu 4500
2
+ 001 afc99990058366
3
+ 003 DLC
4
+ 005 20071104155141.9
5
+ 007 sd ummunniauub
6
+ 008 071103s1939 xxufmnne||||||||| u eng||
7
+ 010 $a afc99990058366
8
+ 040 $a DLC $c DLC
9
+ 245 04 $a The Texas ranger $h [sound recording] / $c Sung by Beale D. Taylor.
10
+ 260 $a Medina, Texas, $c 1939.
11
+ 300 $a 1 sound disc : $b analog, 33 1/3 rpm, mono. ; $c 12 in.
12
+ 651 0 $a Medina $z Texas $z United States of America.
13
+ 700 1 $a Lomax, John Avery, 1867-1948 $e Recording engineer.
14
+ 700 1 $a Lomax, Ruby T. (Ruby Terrill) $e Recording engineer.
15
+ 700 1 $a Taylor, Beale D. $e Singer.
16
+ 852 $a American Folklife Center, Library of Congress
17
+ 852 $a DLC
data/spec/one.xml ADDED
@@ -0,0 +1,4 @@
1
+ <?xml version='1.0'?>
2
+ <collection xmlns='http://www.loc.gov/MARC21/slim' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd'>
3
+ <record><leader>00734njm a2200217uu 4500</leader><controlfield tag='001'>afc99990058366</controlfield><controlfield tag='003'>DLC</controlfield><controlfield tag='005'>20071104155141.9</controlfield><controlfield tag='007'>sd ummunniauub</controlfield><controlfield tag='008'>071103s1939 xxufmnne||||||||| u eng||</controlfield><datafield tag='010' ind1=' ' ind2=' '><subfield code='a'>afc99990058366</subfield></datafield><datafield tag='040' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield><subfield code='c'>DLC</subfield></datafield><datafield tag='245' ind1='0' ind2='4'><subfield code='a'>The Texas ranger</subfield><subfield code='h'>[sound recording] /</subfield><subfield code='c'>Sung by Beale D. Taylor.</subfield></datafield><datafield tag='260' ind1=' ' ind2=' '><subfield code='a'>Medina, Texas,</subfield><subfield code='c'>1939.</subfield></datafield><datafield tag='300' ind1=' ' ind2=' '><subfield code='a'>1 sound disc :</subfield><subfield code='b'>analog, 33 1/3 rpm, mono. ;</subfield><subfield code='c'>12 in.</subfield></datafield><datafield tag='651' ind1=' ' ind2='0'><subfield code='a'>Medina</subfield><subfield code='z'>Texas</subfield><subfield code='z'>United States of America.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Lomax, John Avery, 1867-1948</subfield><subfield code='e'>Recording engineer.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Lomax, Ruby T. (Ruby Terrill)</subfield><subfield code='e'>Recording engineer.</subfield></datafield><datafield tag='700' ind1='1' ind2=' '><subfield code='a'>Taylor, Beale D.</subfield><subfield code='e'>Singer.</subfield></datafield><datafield tag='852' ind1=' ' ind2=' '><subfield code='a'>American Folklife Center, Library of Congress</subfield></datafield><datafield tag='852' ind1=' ' ind2=' '><subfield code='a'>DLC</subfield></datafield></record>
4
+ </collection>
@@ -0,0 +1,49 @@
1
+ require 'spec_helper'
2
+
3
+ describe "MARC4J4R_reader" do
4
+ it "can read binary" do
5
+ reader = MARC4J4R::Reader.new("#{DIR}/one.dat")
6
+ rec = reader.first
7
+ rec['245']['a'].should.equal "The Texas ranger"
8
+ end
9
+
10
+ it "can read XML" do
11
+ reader = MARC4J4R::Reader.new("#{DIR}/one.xml", :marcxml)
12
+ rec = reader.first
13
+ rec['245']['a'].should.equal "The Texas ranger"
14
+ end
15
+
16
+ it "enumerates through all binary records" do
17
+ reader = MARC4J4R::Reader.new("#{DIR}/batch.dat")
18
+ recs = reader.collect
19
+ recs.size.should.equal 10
20
+ end
21
+
22
+ it "enumerates through all XML records" do
23
+ reader = MARC4J4R::Reader.new("#{DIR}/batch.xml", :marcxml)
24
+ recs = reader.collect
25
+ recs.size.should.equal 10
26
+ end
27
+
28
+ end
29
+
30
+ describe "Reader round-tripping" do
31
+ before do
32
+ @one = MARC4J4R::Reader.new("#{DIR}/one.dat").first
33
+ end
34
+
35
+ it "should round-trip binary" do
36
+ rt = MARC4J4R::Reader.new(StringIO.new(@one.to_marc)).first
37
+ rt.should.equal @one
38
+ end
39
+
40
+ it "should round-trip xml" do
41
+ rt = MARC4J4R::Reader.new(StringIO.new(@one.to_xml), :marcxml).first
42
+ rt.should.equal @one
43
+ end
44
+
45
+ it "should show xml and binary forms equal after parsing" do
46
+ rt = MARC4J4R::Reader.new("#{DIR}/one.xml", :marcxml).first
47
+ rt.should.equal @one
48
+ end
49
+ end
@@ -0,0 +1,101 @@
1
+ require 'spec_helper'
2
+
3
+ # LEADER 00734njm a2200217uu 4500
4
+ # 001 afc99990058366
5
+ # 003 DLC
6
+ # 005 20071104155141.9
7
+ # 007 sd ummunniauub
8
+ # 008 071103s1939 xxufmnne||||||||| u eng||
9
+ # 010 $a afc99990058366
10
+ # 040 $a DLC $c DLC
11
+ # 245 04 $a The Texas ranger $h [sound recording] / $c Sung by Beale D. Taylor.
12
+ # 260 $a Medina, Texas, $c 1939.
13
+ # 300 $a 1 sound disc : $b analog, 33 1/3 rpm, mono. ; $c 12 in.
14
+ # 651 0 $a Medina $z Texas $z United States of America.
15
+ # 700 1 $a Lomax, John Avery, 1867-1948 $e Recording engineer.
16
+ # 700 1 $a Lomax, Ruby T. (Ruby Terrill) $e Recording engineer.
17
+ # 700 1 $a Taylor, Beale D. $e Singer.
18
+ # 852 $a American Folklife Center, Library of Congress
19
+ # 852 $a DLC
20
+
21
+
22
+
23
+
24
+
25
+ describe "MARC4J4R_basic_retrieval_stuff" do
26
+ before do
27
+ @one = MARC4J4R::Reader.new("#{DIR}/one.dat").first
28
+ @batch = MARC4J4R::Reader.new("#{DIR}/batch.dat").collect
29
+ end
30
+
31
+ it "can get the leader" do
32
+ @one.leader.should.equal "00734njm a2200217uu 4500"
33
+ end
34
+
35
+ it "can read a control field correctly" do
36
+ @one['001'].value.should.equal "afc99990058366"
37
+ end
38
+
39
+ it "can find all the fields" do
40
+ fields = @one.collect
41
+ fields.size.should.equal 16
42
+ end
43
+
44
+ it "should get the first 245 for this record" do
45
+ @one['245'].to_s.should.equal "245 04 $a The Texas ranger $h [sound recording] / $c Sung by Beale D. Taylor."
46
+ end
47
+
48
+ end
49
+
50
+ describe "MARC4J4R::Record #find_by_tag" do
51
+ before do
52
+ @one = MARC4J4R::Reader.new("#{DIR}/one.dat").first
53
+ @df = MARC4J4R::DataField.new('260')
54
+ @df << MARC4J4R::SubField.new('a', 'Medina, Texas,')
55
+ @df << MARC4J4R::SubField.new('c', '1939.')
56
+
57
+ @cf = MARC4J4R::ControlField.new('005', '20071104155141.9')
58
+
59
+ end
60
+
61
+ it "gets an empty array for non-existant tag(s)" do
62
+ @one.find_by_tag('999').should.equal []
63
+ end
64
+
65
+ it "gets an empty arry for set of non-existant tags" do
66
+ @one.find_by_tag(['998', '999']).should.equal []
67
+ end
68
+
69
+ it "gets a single field for the 260 as string" do
70
+ onetag = @one.find_by_tag('260')
71
+ onetag.should.equal [@df]
72
+ end
73
+
74
+ it "gets a single field for the 260 as an array" do
75
+ onetag = @one.find_by_tag('260')
76
+ @one.find_by_tag(['260']).should.equal [@df]
77
+ end
78
+
79
+ it "gets both the 260 and 005" do
80
+ @one.find_by_tag(['005', '260']).should.equal [@cf, @df]
81
+ end
82
+
83
+ it "returns fields in the order their tags were requested" do
84
+ @one.find_by_tag(['260', '005']).should.equal [@df, @cf]
85
+ end
86
+
87
+ it "allows caller to force return of tags in original order" do
88
+ @one.find_by_tag(['260', '005'], true).should.equal [@cf, @df]
89
+ end
90
+
91
+ it "finds all instances of requested tags" do
92
+ @one.find_by_tag('700').size.should.equal 3
93
+ @one.find_by_tag('852').size.should.equal 2
94
+ @one.find_by_tag(['852', '700']).size.should.equal 5
95
+ end
96
+
97
+ it "returns duplicate-tag fields in the order from the record" do
98
+ first = @one['700']
99
+ @one.find_by_tag('700')[0].should.equal first
100
+ end
101
+ end
@@ -1,10 +1,14 @@
1
1
  require 'rubygems'
2
- require 'test/unit'
3
- require 'shoulda'
2
+ require 'bacon'
3
+ begin
4
+ require 'greeneggs'
5
+ rescue LoadError
6
+ end
4
7
 
5
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
6
8
  $LOAD_PATH.unshift(File.dirname(__FILE__))
9
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
7
10
  require 'marc4j4r'
11
+ DIR = File.dirname(__FILE__)
8
12
 
9
- class Test::Unit::TestCase
10
- end
13
+
14
+ Bacon.summary_on_exit