blacklight-marc 6.1.1 → 6.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2dad28dda5b571d3d111370ddab6cdbd03bab70b
4
- data.tar.gz: 0177360550a4b9b7387790c51dd543b8c1396c4a
3
+ metadata.gz: b0b44e5b957d4a934e1df678bb1e80994e3fd3ec
4
+ data.tar.gz: 9e12245e21d1da293c21cc3e8d0b6e4119a244a7
5
5
  SHA512:
6
- metadata.gz: 82744f0a7fb2e5a2688753211de0a5fa449caca6682d7ae78eada10819828d0e0e67cd9b380339d9c1f7ba53a231dff1618f3a19618f4b67b0c01c410378dfee
7
- data.tar.gz: 283589fa380fe66a421a93a6354b9555b965ac72091dd06fd777535679a45d5fe58375cad0482ac7e38a9b41646e8bab7b381a2b4fb6dcd12b0203bccf6a35c8
6
+ metadata.gz: 4a6175d6dfc1be58f1d833549708a8708f840d24a556828fcbb113c444e5590c0c6c495f42a1c8a6fe9caabee06f6a46cb56e08662cd5249160be0715f37f4b1
7
+ data.tar.gz: 28d2c19fabb43958c4ea0649035ad010898589365ee5f79ffdabdf2e2d2316f2097283719204e8657e894fcc237a3b4cca5fa159a0817e38c1b8e990efbfc937
@@ -5,7 +5,7 @@ module Blacklight::Marc::Indexer::Formats
5
5
  v = v.upcase
6
6
  case
7
7
  when (v.start_with? 'A')
8
- vals << (v == 'AD') ? 'Atlas' : 'Map'
8
+ vals << (v == 'AD' ? 'Atlas' : 'Map')
9
9
  when (v.start_with? 'C')
10
10
  case
11
11
  when (v == "CA")
@@ -107,7 +107,7 @@ module Blacklight::Marc::Indexer::Formats
107
107
  field007hasC
108
108
  end
109
109
 
110
- def self.map_leader(f_000,field007hasC,vals)
110
+ def self.map_leader(f_000,field007hasC,vals,record)
111
111
  f_000 = f_000.upcase
112
112
  case
113
113
  when (f_000.start_with? 'C')
@@ -139,15 +139,13 @@ module Blacklight::Marc::Indexer::Formats
139
139
  vals << ((field007hasC) ? "eBook" : "Book")
140
140
  elsif f_000 == 'AS'
141
141
  # Look in 008 to determine what type of Continuing Resource
142
- formatCode = extract_marc("008[21]", first: true) do |r,a|
143
- format_code = a.upcase
144
- if format_code == 'N'
145
- vals << 'Newspaper'
146
- elsif format_code == 'P'
147
- vals << 'Journal'
148
- else
149
- vals << 'Serial'
150
- end
142
+ format_code = Traject::Macros::Marc21.extract_marc_from(record, "008[21]", first: true, default: "").first.upcase
143
+ if format_code == 'N'
144
+ vals << 'Newspaper'
145
+ elsif format_code == 'P'
146
+ vals << 'Journal'
147
+ else
148
+ vals << 'Serial'
151
149
  end
152
150
  end
153
151
  end
@@ -174,12 +172,12 @@ module Blacklight::Marc::Indexer::Formats
174
172
  else
175
173
  # check the Leader - this is NOT a repeating field
176
174
  # if we find a matching value there, grab it and return.
177
- FormatMap.map_leader(record.leader[6,2],field007hasC,vals)
175
+ FormatMap.map_leader(record.leader[6,2],field007hasC,vals,record)
178
176
  unless vals.empty?
179
177
  vals.uniq!
180
178
  accumulator.concat vals
181
179
  else
182
- FormatMap.map_leader(record.leader[6],field007hasC,vals)
180
+ FormatMap.map_leader(record.leader[6],field007hasC,vals,record)
183
181
  if vals.empty?
184
182
  accumulator.concat ['Unknown']
185
183
  else
@@ -191,4 +189,4 @@ module Blacklight::Marc::Indexer::Formats
191
189
  end
192
190
  end
193
191
  end
194
- end
192
+ end
@@ -1,5 +1,5 @@
1
1
  module Blacklight
2
2
  module Marc
3
- VERSION = '6.1.1'
3
+ VERSION = '6.2.0'
4
4
  end
5
5
  end
@@ -1,6 +1,6 @@
1
1
  $:.unshift './config'
2
2
  class MarcIndexer < Blacklight::Marc::Indexer
3
- # this mixin defines lambda facotry method get_format for legacy marc formats
3
+ # this mixin defines lambda factory method get_format for legacy marc formats
4
4
  include Blacklight::Marc::Indexer::Formats
5
5
 
6
6
  def initialize
@@ -158,4 +158,4 @@ class MarcIndexer < Blacklight::Marc::Indexer
158
158
  end
159
159
  end
160
160
  end
161
- end
161
+ end
@@ -41,6 +41,14 @@ describe Blacklight::Marc::Indexer::Formats do
41
41
  subject.get_format.call(record,val,subject)
42
42
  expect(val).to eql(['TapeCartridge'])
43
43
  end
44
+ it 'should map for 007 field with AD value' do
45
+ record = double('Record')
46
+ allow(record).to receive(:fields).with(["245", "880"]).and_return([])
47
+ expect(record).to receive(:fields).with(["007", "880"]).and_return([MARC::ControlField.new('007','AD')])
48
+ val = []
49
+ subject.get_format.call(record,val,subject)
50
+ expect(val).to eql(['Atlas'])
51
+ end
44
52
  it 'should map for leader' do
45
53
  record = double('Record')
46
54
  allow(record).to receive(:fields).with(["245", "880"]).and_return([])
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blacklight-marc
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.1
4
+ version: 6.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-10 00:00:00.000000000 Z
11
+ date: 2017-07-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: blacklight
@@ -346,7 +346,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
346
346
  version: '0'
347
347
  requirements: []
348
348
  rubyforge_project:
349
- rubygems_version: 2.5.1
349
+ rubygems_version: 2.6.11
350
350
  signing_key:
351
351
  specification_version: 4
352
352
  summary: MARC support for Blacklight