blacklight-marc 8.1.0 → 8.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 23e9d46508c9e92c90ad0f589728440809b003db1ada7744b35961d393a7b17d
4
- data.tar.gz: a7760905d39e8540bf22a6adb5ce6883de27c02796569f2469b1c3008d52e89a
3
+ metadata.gz: ddc8931784772b5088a18b2d969c2039cff9e0897785a0b40094ef6acbb35135
4
+ data.tar.gz: 8ad3d91c571774c588ccc2d94d74220c5685117544dabd5b18c3954efec8cc05
5
5
  SHA512:
6
- metadata.gz: c80948cb35c420f12a658f36084856113d5e240843fc78534b45f678985000b19b3d16830d2660edbfebd9a7fdb6ea9cc31089fe5d2885c7d47628b5dea7ffab
7
- data.tar.gz: f5909facef040f97f73d2071876e2c93a1cdb2cdbae2da9985b4e074780eb0fda021fdc902e7fcb8617387861c37d59d8340de5fc0fc562bfdf9715ce0b49260
6
+ metadata.gz: 2f7f6a477a2851319cc6922086e384156c2e0389c62052b77c4779d42012746c0608250b0fcb27d33f6ab7f61ab9591bf00258cec3b3d308a8905cf17c76864e
7
+ data.tar.gz: a9ce0202761b05216a1d31b3e5a95cf6034f7d3c9667937cc129a7fa6867eb1f4fb930a4cc72ae87432c850bea42e7553d9fac127d56a9ad6e78611ca77f7cb7
@@ -12,21 +12,25 @@ jobs:
12
12
  continue-on-error: ${{ matrix.experimental }}
13
13
  strategy:
14
14
  matrix:
15
- ruby: [2.7, '3.0']
16
- rails_version: ['6.1.7', '7.0.4']
17
- blacklight_version: ['~> 7.0']
15
+ ruby: ['3.2']
16
+ rails_version: ['7.1.3']
17
+ blacklight_version: ['~> 8.1']
18
18
  experimental: [false]
19
19
  include:
20
- - ruby: '3.1'
21
- rails_version: '7.0.4'
20
+ - ruby: '2.7'
21
+ rails_version: '6.1.7.6'
22
22
  blacklight_version: '~> 7.0'
23
23
  experimental: false
24
- - ruby: '3.1'
25
- rails_version: '7.0.4'
26
- blacklight_version: '8.0.0.beta4'
24
+ - ruby: '3.0'
25
+ rails_version: '7.0.8'
26
+ blacklight_version: '~> 7.0'
27
27
  experimental: false
28
28
  - ruby: '3.1'
29
- rails_version: '7.0.4'
29
+ rails_version: '7.0.8'
30
+ blacklight_version: '~> 8.1'
31
+ experimental: false
32
+ - ruby: '3.2'
33
+ rails_version: '7.1.3'
30
34
  blacklight_version: 'github'
31
35
  experimental: true
32
36
  env:
data/Gemfile CHANGED
@@ -9,8 +9,8 @@ end
9
9
  gemspec path: File.expand_path('..', __FILE__)
10
10
 
11
11
  # BEGIN ENGINE_CART BLOCK
12
- # engine_cart: 1.0.1
13
- # engine_cart stanza: 0.10.0
12
+ # engine_cart: 2.6.0
13
+ # engine_cart stanza: 2.5.0
14
14
  # the below comes from engine_cart, a gem used to test this Rails engine gem in the context of a Rails app.
15
15
  file = File.expand_path('Gemfile', ENV['ENGINE_CART_DESTINATION'] || ENV['RAILS_ROOT'] || File.expand_path('.internal_test_app', File.dirname(__FILE__)))
16
16
  if File.exist?(file)
@@ -30,20 +30,16 @@ else
30
30
  else
31
31
  gem 'rails', ENV['RAILS_VERSION']
32
32
  end
33
- end
34
33
 
35
- case ENV['RAILS_VERSION']
36
- when /^6.0/
37
- gem 'sass-rails', '>= 6'
38
- gem 'webpacker', '~> 4.0'
39
- when /^5.[12]/
40
- gem 'sass-rails', '~> 5.0'
41
- when /^4.2/
42
- gem 'responders', '~> 2.0'
43
- gem 'sass-rails', '>= 5.0'
44
- gem 'coffee-rails', '~> 4.1.0'
45
- when /^4.[01]/
46
- gem 'sass-rails', '< 5.0'
34
+ case ENV['RAILS_VERSION']
35
+ when /^6.0/
36
+ gem 'sass-rails', '>= 6'
37
+ gem 'webpacker', '~> 4.0'
38
+ when /^5.[12]/
39
+ gem 'sass-rails', '~> 5.0'
40
+ gem 'sprockets', '~> 3.7'
41
+ gem 'thor', '~> 0.20'
42
+ end
47
43
  end
48
44
  end
49
45
  # END ENGINE_CART BLOCK
@@ -62,40 +62,40 @@ module Blacklight::Marc::DocumentExport
62
62
  edition = to_marc.find{|field| field.tag == '250'}
63
63
  isbn = to_marc.find{|field| field.tag == '020'}
64
64
  issn = to_marc.find{|field| field.tag == '022'}
65
- unless format.nil?
66
- format.is_a?(Array) ? format = format[0].downcase.strip : format = format.downcase.strip
65
+ format = format.first if format.is_a?(Array)
66
+ format = format.downcase.strip unless format.nil?
67
+
68
+ export_text = ""
69
+ if format == 'book'
70
+ export_text << "ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info%3Asid%2Fblacklight.rubyforge.org%3Agenerator&amp;rft.genre=book&amp;"
71
+ export_text << "rft.btitle=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
72
+ export_text << "rft.title=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
73
+ export_text << "rft.au=#{(author.nil? or author['a'].nil?) ? "" : CGI::escape(author['a'])}&amp;"
74
+ export_text << "rft.aucorp=#{CGI::escape(corp_author['a']) if corp_author['a']}+#{CGI::escape(corp_author['b']) if corp_author['b']}&amp;" unless corp_author.blank?
75
+ export_text << "rft.date=#{(publisher_info.nil? or publisher_info['c'].nil?) ? "" : CGI::escape(publisher_info['c'])}&amp;"
76
+ export_text << "rft.place=#{(publisher_info.nil? or publisher_info['a'].nil?) ? "" : CGI::escape(publisher_info['a'])}&amp;"
77
+ export_text << "rft.pub=#{(publisher_info.nil? or publisher_info['b'].nil?) ? "" : CGI::escape(publisher_info['b'])}&amp;"
78
+ export_text << "rft.edition=#{(edition.nil? or edition['a'].nil?) ? "" : CGI::escape(edition['a'])}&amp;"
79
+ export_text << "rft.isbn=#{(isbn.nil? or isbn['a'].nil?) ? "" : isbn['a']}"
80
+ elsif (format =~ /journal/i) # checking using include because institutions may use formats like Journal or Journal/Magazine
81
+ export_text << "ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rfr_id=info%3Asid%2Fblacklight.rubyforge.org%3Agenerator&amp;rft.genre=article&amp;"
82
+ export_text << "rft.title=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
83
+ export_text << "rft.atitle=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
84
+ export_text << "rft.aucorp=#{CGI::escape(corp_author['a']) if corp_author['a']}+#{CGI::escape(corp_author['b']) if corp_author['b']}&amp;" unless corp_author.blank?
85
+ export_text << "rft.date=#{(publisher_info.nil? or publisher_info['c'].nil?) ? "" : CGI::escape(publisher_info['c'])}&amp;"
86
+ export_text << "rft.issn=#{(issn.nil? or issn['a'].nil?) ? "" : issn['a']}"
87
+ else
88
+ export_text << "ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fblacklight.rubyforge.org%3Agenerator&amp;"
89
+ export_text << "rft.title=" + ((title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a']))
90
+ export_text << ((title.nil? or title['b'].nil?) ? "" : CGI.escape(" ") + CGI::escape(title['b']))
91
+ export_text << "&amp;rft.creator=" + ((author.nil? or author['a'].nil?) ? "" : CGI::escape(author['a']))
92
+ export_text << "&amp;rft.aucorp=#{CGI::escape(corp_author['a']) if corp_author['a']}+#{CGI::escape(corp_author['b']) if corp_author['b']}" unless corp_author.blank?
93
+ export_text << "&amp;rft.date=" + ((publisher_info.nil? or publisher_info['c'].nil?) ? "" : CGI::escape(publisher_info['c']))
94
+ export_text << "&amp;rft.place=" + ((publisher_info.nil? or publisher_info['a'].nil?) ? "" : CGI::escape(publisher_info['a']))
95
+ export_text << "&amp;rft.pub=" + ((publisher_info.nil? or publisher_info['b'].nil?) ? "" : CGI::escape(publisher_info['b']))
96
+ export_text << "&amp;rft.format=" + (format.nil? ? "" : CGI::escape(format))
67
97
  end
68
- export_text = ""
69
- if format == 'book'
70
- export_text << "ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info%3Asid%2Fblacklight.rubyforge.org%3Agenerator&amp;rft.genre=book&amp;"
71
- export_text << "rft.btitle=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
72
- export_text << "rft.title=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
73
- export_text << "rft.au=#{(author.nil? or author['a'].nil?) ? "" : CGI::escape(author['a'])}&amp;"
74
- export_text << "rft.aucorp=#{CGI::escape(corp_author['a']) if corp_author['a']}+#{CGI::escape(corp_author['b']) if corp_author['b']}&amp;" unless corp_author.blank?
75
- export_text << "rft.date=#{(publisher_info.nil? or publisher_info['c'].nil?) ? "" : CGI::escape(publisher_info['c'])}&amp;"
76
- export_text << "rft.place=#{(publisher_info.nil? or publisher_info['a'].nil?) ? "" : CGI::escape(publisher_info['a'])}&amp;"
77
- export_text << "rft.pub=#{(publisher_info.nil? or publisher_info['b'].nil?) ? "" : CGI::escape(publisher_info['b'])}&amp;"
78
- export_text << "rft.edition=#{(edition.nil? or edition['a'].nil?) ? "" : CGI::escape(edition['a'])}&amp;"
79
- export_text << "rft.isbn=#{(isbn.nil? or isbn['a'].nil?) ? "" : isbn['a']}"
80
- elsif (format =~ /journal/i) # checking using include because institutions may use formats like Journal or Journal/Magazine
81
- export_text << "ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rfr_id=info%3Asid%2Fblacklight.rubyforge.org%3Agenerator&amp;rft.genre=article&amp;"
82
- export_text << "rft.title=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
83
- export_text << "rft.atitle=#{(title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a'])}+#{(title.nil? or title['b'].nil?) ? "" : CGI::escape(title['b'])}&amp;"
84
- export_text << "rft.aucorp=#{CGI::escape(corp_author['a']) if corp_author['a']}+#{CGI::escape(corp_author['b']) if corp_author['b']}&amp;" unless corp_author.blank?
85
- export_text << "rft.date=#{(publisher_info.nil? or publisher_info['c'].nil?) ? "" : CGI::escape(publisher_info['c'])}&amp;"
86
- export_text << "rft.issn=#{(issn.nil? or issn['a'].nil?) ? "" : issn['a']}"
87
- else
88
- export_text << "ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fblacklight.rubyforge.org%3Agenerator&amp;"
89
- export_text << "rft.title=" + ((title.nil? or title['a'].nil?) ? "" : CGI::escape(title['a']))
90
- export_text << ((title.nil? or title['b'].nil?) ? "" : CGI.escape(" ") + CGI::escape(title['b']))
91
- export_text << "&amp;rft.creator=" + ((author.nil? or author['a'].nil?) ? "" : CGI::escape(author['a']))
92
- export_text << "&amp;rft.aucorp=#{CGI::escape(corp_author['a']) if corp_author['a']}+#{CGI::escape(corp_author['b']) if corp_author['b']}" unless corp_author.blank?
93
- export_text << "&amp;rft.date=" + ((publisher_info.nil? or publisher_info['c'].nil?) ? "" : CGI::escape(publisher_info['c']))
94
- export_text << "&amp;rft.place=" + ((publisher_info.nil? or publisher_info['a'].nil?) ? "" : CGI::escape(publisher_info['a']))
95
- export_text << "&amp;rft.pub=" + ((publisher_info.nil? or publisher_info['b'].nil?) ? "" : CGI::escape(publisher_info['b']))
96
- export_text << "&amp;rft.format=" + (format.nil? ? "" : CGI::escape(format))
97
- end
98
- export_text.html_safe unless export_text.blank?
98
+ export_text.html_safe unless export_text.blank?
99
99
  end
100
100
 
101
101
 
@@ -561,6 +561,7 @@ module Blacklight::Marc::DocumentExport
561
561
 
562
562
  def abbreviate_name(name)
563
563
  name_parts = name.split(", ")
564
+ return "" if name_parts.empty?
564
565
  first_name_parts = name_parts.last.split(" ")
565
566
  temp_name = name_parts.first + ", " + first_name_parts.first[0,1] + "."
566
567
  first_name_parts.shift
@@ -570,7 +571,7 @@ module Blacklight::Marc::DocumentExport
570
571
 
571
572
  def name_reverse(name)
572
573
  name = clean_end_punctuation(name)
573
- return name unless name =~ /,/
574
+ return name if name == ", " || !(name =~ /,/)
574
575
  temp_name = name.split(", ")
575
576
  return temp_name.last + " " + temp_name.first
576
577
  end
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.add_development_dependency "bundler"
29
29
  spec.add_development_dependency "rake"
30
- spec.add_development_dependency "rspec-rails", '~> 4.0'
30
+ spec.add_development_dependency "rspec-rails", '~> 6.1'
31
31
  spec.add_development_dependency "rspec-activemodel-mocks"
32
32
  spec.add_development_dependency "solr_wrapper"
33
33
  spec.add_development_dependency "capybara"
@@ -1,5 +1,5 @@
1
1
  module Blacklight
2
2
  module Marc
3
- VERSION = '8.1.0'
3
+ VERSION = '8.1.2'
4
4
  end
5
5
  end
@@ -629,24 +629,62 @@ describe Blacklight::Solr::Document::MarcExport do
629
629
  end
630
630
  end
631
631
 
632
- describe "export_as_openurl_ctx_kev" do
633
- it "should create the appropriate context object for books" do
634
- record = @typical_record.export_as_openurl_ctx_kev('Book')
635
- expect(record).to match(/.*mtx%3Abook.*rft.genre=book.*rft.btitle=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.place=Oxon%2C\+U.K.*rft.pub=CABI\+Pub.*rft.isbn=/) and
636
- expect(record).not_to match(/.*rft.genre=article.*rft.issn=.*/)
637
- end
638
- it "should create the appropriate context object for journals" do
639
- record = @typical_record.export_as_openurl_ctx_kev('Journal')
640
- record_journal_other = @typical_record.export_as_openurl_ctx_kev('Journal/Magazine')
641
- expect(record).to match(/.*mtx%3Ajournal.*rft.genre=article.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.atitle=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.issn=/) and
642
- expect(record_journal_other).to eq(record) and
643
- expect(record).not_to match(/.*rft.genre=book.*rft.isbn=.*/)
644
- end
645
- it "should create the appropriate context object for other content" do
646
- record = @typical_record.export_as_openurl_ctx_kev('NotARealFormat')
647
- expect(record).to match(/.*mtx%3Adc.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.creator=.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.place=Oxon%2C\+U.K.*rft.pub=CABI\+Pub.*rft.format=notarealformat/) and
648
- expect(record).not_to match(/.*rft.isbn=.*/) and
649
- expect(record).not_to match(/.*rft.issn=.*/)
632
+ describe "#export_as_openurl_ctx_kev" do
633
+ subject(:record) { @typical_record.export_as_openurl_ctx_kev(format) }
634
+
635
+ context 'with a Book' do
636
+ let(:format) { 'Book' }
637
+ it "creates the appropriate context object" do
638
+ expect(record).to match(/.*mtx%3Abook.*rft.genre=book.*rft.btitle=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.place=Oxon%2C\+U.K.*rft.pub=CABI\+Pub.*rft.isbn=/)
639
+ expect(record).not_to match(/.*rft.genre=article.*rft.issn=.*/)
640
+ end
641
+ end
642
+
643
+ context 'with a Journal' do
644
+ let(:format) { 'Journal' }
645
+ it "creates the appropriate context object" do
646
+ expect(record).to match(/.*mtx%3Ajournal.*rft.genre=article.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.atitle=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.issn=/)
647
+ expect(record).not_to match(/.*rft.genre=book.*rft.isbn=.*/)
648
+ end
649
+ end
650
+
651
+ context 'with a Journal/Magazine' do
652
+ let(:format) { 'Journal/Magazine' }
653
+ it "creates the appropriate context object" do
654
+ expect(record).to match(/.*mtx%3Ajournal.*rft.genre=article.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.atitle=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.issn=/)
655
+ expect(record).not_to match(/.*rft.genre=book.*rft.isbn=.*/)
656
+ end
657
+ end
658
+
659
+ context 'with other formats' do
660
+ let(:format) { 'NotARealFormat' }
661
+ it "creates the appropriate context object" do
662
+ expect(record).to match(/.*mtx%3Adc.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.creator=.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.place=Oxon%2C\+U.K.*rft.pub=CABI\+Pub.*rft.format=notarealformat/)
663
+ expect(record).not_to match(/.*rft.isbn=.*/)
664
+ expect(record).not_to match(/.*rft.issn=.*/)
665
+ end
666
+ end
667
+
668
+ context 'with an array' do
669
+ let(:format) { ['Journal'] }
670
+ it "creates the appropriate context object" do
671
+ expect(record).to match(/.*mtx%3Ajournal.*rft.genre=article.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.atitle=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.issn=/)
672
+ expect(record).not_to match(/.*rft.genre=book.*rft.isbn=.*/)
673
+ end
674
+ end
675
+
676
+ context 'with a nil format' do
677
+ let(:format) { nil }
678
+ it "creates the appropriate context object" do
679
+ expect(record).to match(/.*mtx%3Adc.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.creator=.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.place=Oxon%2C\+U.K.*rft.pub=CABI\+Pub.*rft.format=/)
680
+ end
681
+ end
682
+
683
+ context 'with an empty array' do
684
+ let(:format) { [] }
685
+ it "creates the appropriate context object" do
686
+ expect(record).to match(/.*mtx%3Adc.*rft.title=Apples\+%3A\+botany%2C\+production%2C\+and\+uses.*rft.creator=.*rft.aucorp=Bobs\+Your\+Uncle.*rft.date=c2003.*rft.place=Oxon%2C\+U.K.*rft.pub=CABI\+Pub.*rft.format=/)
687
+ end
650
688
  end
651
689
  end
652
690
 
@@ -26,6 +26,19 @@ class MockClass264
26
26
  end
27
27
  end
28
28
 
29
+ class MockClassInvalid700
30
+ include Blacklight::Marc::DocumentExport
31
+
32
+ def to_marc
33
+ fields = [
34
+ { "100" => { "subfields" => [{ "a" => "Borja, Ronaldo I." }]}},
35
+ { "245" => { "ind1" => " ", "ind2" => " ", "subfields" => [{ "a" => "Plasticity : ", "b" => "modeling & computation /", "c" => "Ronaldo I. Borja." }] } },
36
+ { "700" => { "ind1" => " ", "ind2" => " ", "subfields" => [{ "a" => ", ." }] } }
37
+ ]
38
+ MARC::Record.new_from_hash('fields' => fields)
39
+ end
40
+ end
41
+
29
42
  RSpec.describe Blacklight::Marc::DocumentExport do
30
43
  describe 'export citiations from 260 field' do
31
44
  it 'exports citations in apa format' do
@@ -60,4 +73,21 @@ RSpec.describe Blacklight::Marc::DocumentExport do
60
73
  expect(MockClass264.new.export_as_chicago_citation_txt).to include('Berlin: Springer,')
61
74
  end
62
75
  end
76
+
77
+ describe 'when the 700 only has punctuation and spaces' do
78
+ it 'exports citations in apa format' do
79
+ expect(MockClassInvalid700.new.export_as_apa_citation_txt).to include('Borja, R. I')
80
+ expect(MockClassInvalid700.new.export_as_apa_citation_txt).to include('Plasticity')
81
+ end
82
+
83
+ it 'exports citations in mla format' do
84
+ expect(MockClassInvalid700.new.export_as_mla_citation_txt).to include('Borja, Ronaldo I')
85
+ expect(MockClassInvalid700.new.export_as_mla_citation_txt).to include('Plasticity')
86
+ end
87
+
88
+ it 'exports citations in Chicago format' do
89
+ expect(MockClassInvalid700.new.export_as_chicago_citation_txt).to include('Borja, Ronaldo I')
90
+ expect(MockClassInvalid700.new.export_as_chicago_citation_txt).to include('Plasticity')
91
+ end
92
+ end
63
93
  end
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: 8.1.0
4
+ version: 8.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-07 00:00:00.000000000 Z
11
+ date: 2024-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: blacklight
@@ -140,14 +140,14 @@ dependencies:
140
140
  requirements:
141
141
  - - "~>"
142
142
  - !ruby/object:Gem::Version
143
- version: '4.0'
143
+ version: '6.1'
144
144
  type: :development
145
145
  prerelease: false
146
146
  version_requirements: !ruby/object:Gem::Requirement
147
147
  requirements:
148
148
  - - "~>"
149
149
  - !ruby/object:Gem::Version
150
- version: '4.0'
150
+ version: '6.1'
151
151
  - !ruby/object:Gem::Dependency
152
152
  name: rspec-activemodel-mocks
153
153
  requirement: !ruby/object:Gem::Requirement