marc4j4r 1.4.3-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,118 @@
1
+ 000004262 LDR L ^^^^^nam^a22003011^^4500
2
+ 000004262 001 L 000004262
3
+ 000004262 005 L 19891107000000.0
4
+ 000004262 006 L m^^^^^^^^d^^^^^^^^
5
+ 000004262 007 L cr^bn^---auaua
6
+ 000004262 008 L 880715r19721939nyua^^^^^b^^^^00100^eng^^
7
+ 000004262 010 L $$a72001885/MN
8
+ 000004262 020 L $$a0306705133
9
+ 000004262 035 L $$a(RLIN)MIUG0297757-B
10
+ 000004262 035# L $$a(CaOTULAS)159822964
11
+ 000004262 035 L $$a(OCoLC)ocm00297757
12
+ 000004262 035 L $$asdr-inu1221428
13
+ 000004262 040 # L $$aDLC$$cDLC$$dMiU
14
+ 000004262 043 L $$an------
15
+ 000004262 0500 L $$aML3557$$b.D3645 1972
16
+ 000004262 082 L $$a784.7/51
17
+ 000004262 1001 L $$aDensmore, Frances,$$d1867-1957.
18
+ 000004262 24510 L $$aNootka and Quileute music.
19
+ 000004262 260 L $$aNew York,$$bDa Capo Press,$$c1972.
20
+ 000004262 300 L $$axxvi, 358 p.$$billus.$$c23 cm.
21
+ 000004262 4900 L $$aDa Capo Press music reprint series
22
+ 000004262 500 L $$aReprint of the 1939 ed., which was issued as Bulletin 124 of Smithsonian Institution. Bureau of American Ethnology.
23
+ 000004262 504 L $$aBibliography: p. 349.
24
+ 000004262 538 L $$aMode of access: Internet.
25
+ 000004262 650 0 L $$aNootka Indians$$xMusic.
26
+ 000004262 650 0 L $$aQuileute Indians$$xMusic.
27
+ 000004262 8520 L $$aMiU$$bMUSIC$$hML3557 .D4255 1972
28
+ 000004262 852 L $$ainu$$bSDR$$cINU
29
+ 000004262 970 L $$aBK$$bBook
30
+ 000004262 970 L $$aCE$$bElectronic Resource
31
+ 000004262 971 L $$aMiU
32
+ 000004262 972 L $$c20040625
33
+ 000004262 973 L $$aHT$$bavail_ht
34
+ 000004262 973 L $$aAC$$bavail_circ
35
+ 000004262 974 L $$uinu.30000053901769$$ric$$d20100226
36
+ 000004262 998 L $$s9665
37
+ 000005951 LDR L ^^^^^nam^a22002771^^4500
38
+ 000005951 001 L 000005951
39
+ 000005951 005 L 19970922000000.0
40
+ 000005951 006 L m^^^^^^^^d^^^^^^^^
41
+ 000005951 007 L cr^bn^---auaua
42
+ 000005951 008 L 880715s1968^^^^dcu^^^^^^b^^^|00010^eng^c
43
+ 000005951 010 L ahew68000006
44
+ 000005951 035 L $$a(RLIN)MIUG0425743-B
45
+ 000005951 035 L $$a(CaOTULAS)159824865
46
+ 000005951 035 L $$a(OCoLC)ocm00425743
47
+ 000005951 035 L $$asdr-ucsc.b16458175
48
+ 000005951 040 L $$a*U.S. Dept. of Health Education, and Welfare. Li$$cDLC$$dMiU
49
+ 000005951 0500 L $$aHD7123$$b.A39 no. 22
50
+ 000005951 082 L $$a301.5/5
51
+ 000005951 1001 L $$aKreps, Juanita Morris.
52
+ 000005951 24510 L $$aLifetime allocation of work and leisure,$$cby Juanita M. Kreps.
53
+ 000005951 260 L $$a[Washington,$$bFor sale by Supt. of Docs., U.S. Govt. Print. Off.,$$c1968]
54
+ 000005951 300 L $$aix, 44 p.$$c24 cm.
55
+ 000005951 4901 L $$aUnited States. Social Security Administration. Office of Research and Statistics. Research report$$vno. 22
56
+ 000005951 504 L $$aBibliographical footnotes.
57
+ 000005951 538 L $$aMode of access: Internet.
58
+ 000005951 650 0 L $$aAge and employment
59
+ 000005951 650 0 L $$aRetirement
60
+ 000005951 830 0 L $$aResearch report (United States. Social Security Administration. Office of Research and Statistics) ;$$vno. 22
61
+ 000005951 8520 L $$aMiU$$bTAUB$$hHD6279 .K925
62
+ 000005951 8520 L $$aMiU$$bTAUB$$hHD 7123 .A28 no.22
63
+ 000005951 8520 L $$aMiU$$bBUHR$$cGRAD$$hHD 7123 .A28 no.22
64
+ 000005951 852 L $$auc1$$bSDR$$cUCSC
65
+ 000005951 970 L $$aBK$$bBook
66
+ 000005951 970 L $$aCE$$bElectronic Resource
67
+ 000005951 971 L $$aMiU
68
+ 000005951 972 L $$c20040625
69
+ 000005951 972 L $$c20040625
70
+ 000005951 972 L $$c20040625
71
+ 000005951 973 L $$aHT$$bavail_ht
72
+ 000005951 973 L $$aAC$$bavail_circ
73
+ 000005951 974 L $$umdp.39015038814847$$ric
74
+ 000005951 974 L $$umdp.39015072105847$$ric$$d20091001
75
+ 000005951 974 L $$zno.22$$uuc1.32106000924198$$ric$$d20091202
76
+ 000005951 998 L $$s9665
77
+ 000009811 LDR L ^^^^^nam^a22003251^^4500
78
+ 000009811 001 L 000009811
79
+ 000009811 005 L 19970922000000.0
80
+ 000009811 006 L m^^^^^^^^d^^^^^^^^
81
+ 000009811 007 L cr^bn^---auaua
82
+ 000009811 008 L 880715s1971^^^^dcua^^^^^bs^^^00000^eng^^
83
+ 000009811 010 L $$a72179703
84
+ 000009811 035 L $$a(RLIN)MIUG0695316-B
85
+ 000009811 035 L $$a(CaOTULAS)159829127
86
+ 000009811 035 L $$a(OCoLC)ocm00695316
87
+ 000009811 035 L $$asdr-ucsc.b13985097
88
+ 000009811 040 L $$aDLC$$cDLC$$dMiU$$dCStRLIN
89
+ 000009811 043 L $$an-us---
90
+ 000009811 0500 L $$aHD7123$$b.A39 no. 37$$aHD7102.U4
91
+ 000009811 082 L $$a368.4/00973 s$$a368.4/2/00973
92
+ 000009811 086 L $$aII0 aHE 3.49:37
93
+ 000009811 1101 L $$aUnited States.$$bSocial Security Administration.$$bOffice of Research and Statistics.
94
+ 000009811 24510 L $$aFinancing mental health care under medicare and medicaid.
95
+ 000009811 260 L $$a[Washington;$$bFor sale by the Supt. of Docs., U.S. Govt. Print. Off.,$$c1971]
96
+ 000009811 300 L $$avii, 52 p.$$billus.$$c27 cm.
97
+ 000009811 4901 L $$aIts Research report$$vno. 37
98
+ 000009811 500 L $$aSupt. of Docs. no.: HE 3.49:37
99
+ 000009811 504 L $$aIncludes bibliographical references.
100
+ 000009811 538 L $$aMode of access: Internet.
101
+ 000009811 650 0 L $$aMental health insurance$$zUnited States.
102
+ 000009811 650 0 L $$aMedicare
103
+ 000009811 650 0 L $$aMedicaid
104
+ 000009811 830 0 L $$aResearch report (United States. Social Security Administration. Office of Research and Statistics) ;$$vno. 37
105
+ 000009811 8520 L $$aMiU$$bBUHR$$cGRAD$$hHD 7123 .A28 no.37
106
+ 000009811 8520 L $$aMiU$$bTAUB$$hHD 7123 .A28 no.37
107
+ 000009811 852 L $$auc1$$bSDR$$cUCSC
108
+ 000009811 970 L $$aBK$$bBook
109
+ 000009811 970 L $$aCE$$bElectronic Resource
110
+ 000009811 970 L $$aXS$$bStatistics
111
+ 000009811 971 L $$aMiU
112
+ 000009811 972 L $$c20040625
113
+ 000009811 972 L $$c20040625
114
+ 000009811 973 L $$aHT$$bavail_ht
115
+ 000009811 973 L $$aAC$$bavail_circ
116
+ 000009811 974 L $$zno.37$$umdp.39015004063635$$ric
117
+ 000009811 974 L $$zno.37$$uuc1.32106000924313$$ric$$d20091202
118
+ 000009811 998 L $$s9665
@@ -0,0 +1,21 @@
1
+ require 'rubygems'
2
+
3
+ begin
4
+ require 'bundler'
5
+ rescue LoadError => e
6
+ warn e.message
7
+ warn "Run `gem install bundler` to install Bundler."
8
+ exit e.status_code
9
+ end
10
+
11
+ begin
12
+ Bundler.setup(:default, :development, :test)
13
+ rescue Bundler::BundlerError => e
14
+ warn e.message
15
+ warn "Run `bundle install` to install missing gems."
16
+ exit e.status_code
17
+ end
18
+
19
+ require 'minitest/autorun'
20
+ require 'marc4j4r'
21
+ DIR = File.dirname(__FILE__)
@@ -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
@@ -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
@@ -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,112 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ require 'helper'
4
+
5
+ describe "MARC4J4R_reader" do
6
+ it "can read binary" do
7
+ reader = MARC4J4R::Reader.new("#{DIR}/one.dat")
8
+ rec = reader.first
9
+ rec['245']['a'].must_equal "The Texas ranger"
10
+ end
11
+
12
+ it "can read XML" do
13
+ reader = MARC4J4R::Reader.new("#{DIR}/one.xml", :marcxml)
14
+ rec = reader.first
15
+ rec['245']['a'].must_equal "The Texas ranger"
16
+ end
17
+
18
+ it "enumerates through all binary records" do
19
+ reader = MARC4J4R::Reader.new("#{DIR}/batch.dat")
20
+ recs = reader.collect {|a| a}
21
+ recs.size.must_equal 10
22
+ end
23
+
24
+ it "enumerates through all XML records" do
25
+ reader = MARC4J4R::Reader.new("#{DIR}/batch.xml", :marcxml)
26
+ recs = reader.collect {|a| a}
27
+ recs.size.must_equal 10
28
+ end
29
+
30
+ it "Bails if passed an illegal type" do
31
+ lambda{reader = MARC4J4R::Reader.new("#{DIR}/batch.xml", :marc)}.must_raise(ArgumentError).message.must_match(/^Reader type/)
32
+ end
33
+ it "Bails if passed an illegal encoding" do
34
+ lambda{reader = MARC4J4R::Reader.new("#{DIR}/batch.xml", :strictmarc, :utf)}.must_raise(ArgumentError).message.must_match(/^Encoding/)
35
+ end
36
+ end
37
+
38
+ describe "Reader encodings, strict reader" do
39
+ it "Works with UTF-8 without explicit encoding" do
40
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat")
41
+ r = reader.first
42
+ second_title = r.find_by_tag('245')[1]
43
+ second_title['a'].must_equal "湘鄂贛苏区史稿 /"
44
+ end
45
+ it "Works with UTF-8, explicit encoding" do
46
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat", :strictmarc, :utf8)
47
+ r = reader.first
48
+ second_title = r.find_by_tag('245')[1]
49
+ second_title['a'].must_equal "湘鄂贛苏区史稿 /"
50
+ end
51
+ it "Fails with UTF-8, wrong explicit encoding" do
52
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat", :strictmarc, :marc8)
53
+ r = reader.first
54
+ second_title = r.find_by_tag('245')[1]
55
+ second_title['a'].wont_equal "湘鄂贛苏区史稿 /"
56
+ end
57
+ it "Fails with UTF-8, wrong explicit encoding" do
58
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat", :strictmarc, :iso)
59
+ r = reader.first
60
+ second_title = r.find_by_tag('245')[1]
61
+ second_title['a'].wont_equal "湘鄂贛苏区史稿 /"
62
+ end
63
+ end
64
+
65
+ describe "Reader encodings, permissive reader" do
66
+
67
+
68
+ it "Works with UTF-8 without explicit encoding" do
69
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat", :permissivemarc)
70
+ r = reader.first
71
+ second_title = r.find_by_tag('245')[1]
72
+ second_title['a'].must_equal "湘鄂贛苏区史稿 /"
73
+ end
74
+ it "Works with UTF-8, explicit encoding" do
75
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat", :permissivemarc, :utf8)
76
+ r = reader.first
77
+ second_title = r.find_by_tag('245')[1]
78
+ second_title['a'].must_equal "湘鄂贛苏区史稿 /"
79
+ end
80
+ it "Fails with UTF-8, wrong explicit encoding" do
81
+ reader = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat", :permissivemarc, :iso)
82
+ r = reader.first
83
+ second_title = r.find_by_tag('245')[1]
84
+ second_title['a'].must_equal "湘鄂贛苏区史稿 /" # equal, because it's permissive and tries to do the right thing
85
+ end
86
+
87
+
88
+ end
89
+
90
+
91
+
92
+
93
+ describe "Reader round-tripping" do
94
+ before do
95
+ @one = MARC4J4R::Reader.new("#{DIR}/one.dat").first
96
+ end
97
+
98
+ it "should round-trip binary" do
99
+ rt = MARC4J4R::Reader.new(StringIO.new(@one.to_marc)).first
100
+ rt.must_equal @one
101
+ end
102
+
103
+ it "should round-trip xml" do
104
+ rt = MARC4J4R::Reader.new(StringIO.new(@one.to_xml), :marcxml).first
105
+ rt.must_equal @one
106
+ end
107
+
108
+ it "should show xml and binary forms equal after parsing" do
109
+ rt = MARC4J4R::Reader.new("#{DIR}/one.xml", :marcxml).first
110
+ rt.must_equal @one
111
+ end
112
+ end
@@ -0,0 +1,146 @@
1
+ require '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.must_equal "00734njm a2200217uu 4500"
33
+ end
34
+
35
+ it "can set the leader" do
36
+ @one.leader = "00734njm 2200217uu 4500"
37
+ @one.leader.must_equal "00734njm 2200217uu 4500"
38
+ end
39
+
40
+ it "disallows bad leaders" do
41
+ lambda{
42
+ @one.leader = 'Hello World'
43
+ }.must_raise RuntimeError
44
+ end
45
+
46
+ it "can read a control field correctly" do
47
+ @one['001'].value.must_equal "afc99990058366"
48
+ end
49
+
50
+ it "can find all the fields" do
51
+ fields = @one.collect {|a| a}
52
+ fields.size.must_equal 16
53
+ end
54
+
55
+ it "should get the first 245 for this record" do
56
+ @one['245'].to_s.must_equal "245 04 $a The Texas ranger $h [sound recording] / $c Sung by Beale D. Taylor."
57
+ end
58
+
59
+ it "finds nothing when there's nothign there" do
60
+ @one['035'].must_equal nil
61
+ end
62
+ end
63
+
64
+ describe "MARC4J4R::Record #find_by_tag" do
65
+ before do
66
+ @one = MARC4J4R::Reader.new("#{DIR}/one.dat").first
67
+ @df = MARC4J4R::DataField.new('260')
68
+ @df << MARC4J4R::SubField.new('a', 'Medina, Texas,')
69
+ @df << MARC4J4R::SubField.new('c', '1939.')
70
+
71
+ @cf = MARC4J4R::ControlField.new('005', '20071104155141.9')
72
+
73
+ @batch = MARC4J4R::Reader.new("#{DIR}/batch.dat").collect
74
+ @utf8 = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat").first
75
+ end
76
+
77
+ it "gets an empty array for non-existant tag(s)" do
78
+ @one.find_by_tag('999').must_equal []
79
+ end
80
+
81
+ it "gets an empty arry for set of non-existant tags" do
82
+ @one.find_by_tag(['998', '999']).must_equal []
83
+ end
84
+
85
+ it "gets a single field for the 260 as string" do
86
+ onetag = @one.find_by_tag('260')
87
+ onetag.must_equal [@df]
88
+ end
89
+
90
+ it "gets a single field for the 260 as an array" do
91
+ onetag = @one.find_by_tag('260')
92
+ @one.find_by_tag(['260']).must_equal [@df]
93
+ end
94
+
95
+ it "gets both the 260 and 005" do
96
+ @one.find_by_tag(['005', '260']).must_equal [@cf, @df]
97
+ end
98
+
99
+ it "returns fields in the order their tags were requested" do
100
+ @one.find_by_tag(['260', '005']).must_equal [@df, @cf]
101
+ end
102
+
103
+ it "allows caller to force return of tags in original order" do
104
+ @one.find_by_tag(['260', '005'], true).must_equal [@cf, @df]
105
+ end
106
+
107
+ it "finds all instances of requested tags" do
108
+ @one.find_by_tag('700').size.must_equal 3
109
+ @one.find_by_tag('852').size.must_equal 2
110
+ @one.find_by_tag(['852', '700']).size.must_equal 5
111
+ end
112
+
113
+ it "returns duplicate-tag fields in the order from the record" do
114
+ first = @one['700']
115
+ @one.find_by_tag('700')[0].must_equal first
116
+ end
117
+
118
+ end
119
+
120
+ describe "Format checks" do
121
+ before do
122
+ @one = MARC4J4R::Reader.new("#{DIR}/one.dat").first
123
+ @batch = MARC4J4R::Reader.new("#{DIR}/batch.dat").collect {|a| a}
124
+ @utf8 = MARC4J4R::Reader.new("#{DIR}/chinese_utf8.dat").first
125
+ end
126
+
127
+ it "round trips binary" do
128
+ MARC4J4R::Record.from_string(@one.to_marc).must_equal @one
129
+ @batch.each do |r|
130
+ MARC4J4R::Record.from_string(r.to_marc).must_equal r
131
+ end
132
+ end
133
+
134
+ it "round trips utf8 record as binary" do
135
+ MARC4J4R::Record.from_string(@utf8.to_marc, :utf8).must_equal @utf8
136
+ end
137
+
138
+ it "round trips XML" do
139
+ MARC4J4R::Record.from_xml_string(@one.to_xml).must_equal @one
140
+ end
141
+
142
+ it "round trips marc-in-json" do
143
+ copy = @one.to_marc_in_json
144
+ MARC4J4R::Record.new_from_marc_in_json(copy).must_equal @one
145
+ end
146
+ end
@@ -0,0 +1,12 @@
1
+ require 'helper'
2
+ require 'marc4j4r'
3
+
4
+ class TestMarc4j4r < Test::Unit::TestCase
5
+
6
+ def test_version
7
+ version = Marc4j4r.const_get('VERSION')
8
+
9
+ assert !version.empty?, 'should have a VERSION constant'
10
+ end
11
+
12
+ end
@@ -0,0 +1,118 @@
1
+ 000004262 LDR L ^^^^^nam^a22003011^^4500
2
+ 000004262 001 L 000004262
3
+ 000004262 005 L 19891107000000.0
4
+ 000004262 006 L m^^^^^^^^d^^^^^^^^
5
+ 000004262 007 L cr^bn^---auaua
6
+ 000004262 008 L 880715r19721939nyua^^^^^b^^^^00100^eng^^
7
+ 000004262 010 L $$a72001885/MN
8
+ 000004262 020 L $$a0306705133
9
+ 000004262 035 L $$a(RLIN)MIUG0297757-B
10
+ 000004262 035 L $$a(CaOTULAS)159822964
11
+ 000004262 035 L $$a(OCoLC)ocm00297757
12
+ 000004262 035 L $$asdr-inu1221428
13
+ 000004262 040 L $$aDLC$$cDLC$$dMiU
14
+ 000004262 043 L $$an------
15
+ 000004262 0500 L $$aML3557$$b.D3645 1972
16
+ 000004262 082 L $$a784.7/51
17
+ 000004262 1001 L $$aDensmore, Frances,$$d1867-1957.
18
+ 000004262 24510 L $$aNootka and Quileute music.
19
+ 000004262 260 L $$aNew York,$$bDa Capo Press,$$c1972.
20
+ 000004262 300 L $$axxvi, 358 p.$$billus.$$c23 cm.
21
+ 000004262 4900 L $$aDa Capo Press music reprint series
22
+ 000004262 500 L $$aReprint of the 1939 ed., which was issued as Bulletin 124 of Smithsonian Institution. Bureau of American Ethnology.
23
+ 000004262 504 L $$aBibliography: p. 349.
24
+ 000004262 538 L $$aMode of access: Internet.
25
+ 000004262 650 0 L $$aNootka Indians$$xMusic.
26
+ 000004262 650 0 L $$aQuileute Indians$$xMusic.
27
+ 000004262 8520 L $$aMiU$$bMUSIC$$hML3557 .D4255 1972
28
+ 000004262 852 L $$ainu$$bSDR$$cINU
29
+ 000004262 970 L $$aBK$$bBook
30
+ 000004262 970 L $$aCE$$bElectronic Resource
31
+ 000004262 971 L $$aMiU
32
+ 000004262 972 L $$c20040625
33
+ 000004262 973 L $$aHT$$bavail_ht
34
+ 000004262 973 L $$aAC$$bavail_circ
35
+ 000004262 974 L $$uinu.30000053901769$$ric$$d20100226
36
+ 000004262 998 L $$s9665
37
+ 000005951 LDR L ^^^^^nam^a22002771^^4500
38
+ 000005951 001 L 000005951
39
+ 000005951 005 L 19970922000000.0
40
+ 000005951 006 L m^^^^^^^^d^^^^^^^^
41
+ 000005951 007 L cr^bn^---auaua
42
+ 000005951 008 L 880715s1968^^^^dcu^^^^^^b^^^|00010^eng^c
43
+ 000005951 010 L $$ahew68000006
44
+ 000005951 035 L $$a(RLIN)MIUG0425743-B
45
+ 000005951 035 L $$a(CaOTULAS)159824865
46
+ 000005951 035 L $$a(OCoLC)ocm00425743
47
+ 000005951 035 L $$asdr-ucsc.b16458175
48
+ 000005951 040 L $$a*U.S. Dept. of Health Education, and Welfare. Li$$cDLC$$dMiU
49
+ 000005951 0500 L $$aHD7123$$b.A39 no. 22
50
+ 000005951 082 L $$a301.5/5
51
+ 000005951 1001 L $$aKreps, Juanita Morris.
52
+ 000005951 24510 L $$aLifetime allocation of work and leisure,$$cby Juanita M. Kreps.
53
+ 000005951 260 L $$a[Washington,$$bFor sale by Supt. of Docs., U.S. Govt. Print. Off.,$$c1968]
54
+ 000005951 300 L $$aix, 44 p.$$c24 cm.
55
+ 000005951 4901 L $$aUnited States. Social Security Administration. Office of Research and Statistics. Research report$$vno. 22
56
+ 000005951 504 L $$aBibliographical footnotes.
57
+ 000005951 538 L $$aMode of access: Internet.
58
+ 000005951 650 0 L $$aAge and employment
59
+ 000005951 650 0 L $$aRetirement
60
+ 000005951 830 0 L $$aResearch report (United States. Social Security Administration. Office of Research and Statistics) ;$$vno. 22
61
+ 000005951 8520 L $$aMiU$$bTAUB$$hHD6279 .K925
62
+ 000005951 8520 L $$aMiU$$bTAUB$$hHD 7123 .A28 no.22
63
+ 000005951 8520 L $$aMiU$$bBUHR$$cGRAD$$hHD 7123 .A28 no.22
64
+ 000005951 852 L $$auc1$$bSDR$$cUCSC
65
+ 000005951 970 L $$aBK$$bBook
66
+ 000005951 970 L $$aCE$$bElectronic Resource
67
+ 000005951 971 L $$aMiU
68
+ 000005951 972 L $$c20040625
69
+ 000005951 972 L $$c20040625
70
+ 000005951 972 L $$c20040625
71
+ 000005951 973 L $$aHT$$bavail_ht
72
+ 000005951 973 L $$aAC$$bavail_circ
73
+ 000005951 974 L $$umdp.39015038814847$$ric
74
+ 000005951 974 L $$umdp.39015072105847$$ric$$d20091001
75
+ 000005951 974 L $$zno.22$$uuc1.32106000924198$$ric$$d20091202
76
+ 000005951 998 L $$s9665
77
+ 000009811 LDR L ^^^^^nam^a22003251^^4500
78
+ 000009811 001 L 000009811
79
+ 000009811 005 L 19970922000000.0
80
+ 000009811 006 L m^^^^^^^^d^^^^^^^^
81
+ 000009811 007 L cr^bn^---auaua
82
+ 000009811 008 L 880715s1971^^^^dcua^^^^^bs^^^00000^eng^^
83
+ 000009811 010 L $$a72179703
84
+ 000009811 035 L $$a(RLIN)MIUG0695316-B
85
+ 000009811 035 L $$a(CaOTULAS)159829127
86
+ 000009811 035 L $$a(OCoLC)ocm00695316
87
+ 000009811 035 L $$asdr-ucsc.b13985097
88
+ 000009811 040 L $$aDLC$$cDLC$$dMiU$$dCStRLIN
89
+ 000009811 043 L $$an-us---
90
+ 000009811 0500 L $$aHD7123$$b.A39 no. 37$$aHD7102.U4
91
+ 000009811 082 L $$a368.4/00973 s$$a368.4/2/00973
92
+ 000009811 086 L $$aII0 aHE 3.49:37
93
+ 000009811 1101 L $$aUnited States.$$bSocial Security Administration.$$bOffice of Research and Statistics.
94
+ 000009811 24510 L $$aFinancing mental health care under medicare and medicaid.
95
+ 000009811 260 L $$a[Washington;$$bFor sale by the Supt. of Docs., U.S. Govt. Print. Off.,$$c1971]
96
+ 000009811 300 L $$avii, 52 p.$$billus.$$c27 cm.
97
+ 000009811 4901 L $$aIts Research report$$vno. 37
98
+ 000009811 500 L $$aSupt. of Docs. no.: HE 3.49:37
99
+ 000009811 504 L $$aIncludes bibliographical references.
100
+ 000009811 538 L $$aMode of access: Internet.
101
+ 000009811 650 0 L $$aMental health insurance$$zUnited States.
102
+ 000009811 650 0 L $$aMedicare
103
+ 000009811 650 0 L $$aMedicaid
104
+ 000009811 830 0 L $$aResearch report (United States. Social Security Administration. Office of Research and Statistics) ;$$vno. 37
105
+ 000009811 8520 L $$aMiU$$bBUHR$$cGRAD$$hHD 7123 .A28 no.37
106
+ 000009811 8520 L $$aMiU$$bTAUB$$hHD 7123 .A28 no.37
107
+ 000009811 852 L $$auc1$$bSDR$$cUCSC
108
+ 000009811 970 L $$aBK$$bBook
109
+ 000009811 970 L $$aCE$$bElectronic Resource
110
+ 000009811 970 L $$aXS$$bStatistics
111
+ 000009811 971 L $$aMiU
112
+ 000009811 972 L $$c20040625
113
+ 000009811 972 L $$c20040625
114
+ 000009811 973 L $$aHT$$bavail_ht
115
+ 000009811 973 L $$aAC$$bavail_circ
116
+ 000009811 974 L $$zno.37$$umdp.39015004063635$$ric
117
+ 000009811 974 L $$zno.37$$uuc1.32106000924313$$ric$$d20091202
118
+ 000009811 998 L $$s9665