spotlight-dor-resources 1.1.0 → 2.0.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: 182216d0851743e3b7309ddc05271a0ba7c16cea
4
- data.tar.gz: 21bf71fe88cb1e52a766404f60476519eddbe6f9
3
+ metadata.gz: c7c9626527848a815f94b5e897c644439a4130b5
4
+ data.tar.gz: a5bb46bce723dbdb76d9799a06954854a588f351
5
5
  SHA512:
6
- metadata.gz: bd1fd4bfe26544a6e344d0195abb4c74bc8ced7cc8bf70e7a910926c08e48ed8928a90cf1429dab4c7022398d2f149ad6cbf483fad54a0a34681abb0dbd94f6a
7
- data.tar.gz: 4fa9a09684202c7894f99f00cfb5bb2c10c7db5475c8adf3b19a257ce1e1d442228db2ea753d2746af52b50cb580f1961939376b5ec6218210802f8de702c7bd
6
+ metadata.gz: e4f617b75c4659fb64a368eddf055168af6fcac6e9a8053aa3cd0d1c8d421ddf1e6083a3ce4f313dc453b246e9d59af9e1b90667325965d5566c40ce841a5e21
7
+ data.tar.gz: 8aae9489098370a7ce5982813ded06b216ecc29d1b8f9d33909041a9f6dc82abcf2de25e975b6a07468acfc63b47764d7fc685df1de635095107e6289111796d
data/.gitignore CHANGED
@@ -2,7 +2,6 @@
2
2
  *.sassc
3
3
  .sass-cache
4
4
  capybara-*.html
5
- .rspec
6
5
  .rvmrc
7
6
  .ruby-version
8
7
  /.bundle
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
@@ -11,8 +11,6 @@ AllCops:
11
11
  - '.internal_test_app/**/*'
12
12
  - 'spec/test_app_templates/**/*'
13
13
  - 'spec/spec_helper.rb'
14
- - 'spec/teaspoon_env.rb'
15
- - 'vendor/**/*'
16
14
  TargetRubyVersion: 2.2
17
15
 
18
16
  Rails:
@@ -1,7 +1,7 @@
1
1
  module Spotlight::Resources
2
- # Base Resource indexer for objects in DOR
2
+ # Base Resource harvester for objects in DOR
3
3
  class DorHarvester < Spotlight::Resource
4
- include ActiveSupport::Benchmarkable
4
+ self.document_builder_class = Spotlight::Resources::DorSolrDocumentBuilder
5
5
 
6
6
  store :data, accessors: [:druid_list]
7
7
 
@@ -11,25 +11,6 @@ module Spotlight::Resources
11
11
  end
12
12
  end
13
13
 
14
- ##
15
- # Generate solr documents for the DOR resources identified by this object
16
- #
17
- # @return [Enumerator] an enumerator of solr document hashes for indexing
18
- def to_solr
19
- return to_enum(:to_solr) { size } unless block_given?
20
-
21
- benchmark "Indexing resource #{inspect} (est. #{size} items)" do
22
- base_doc = super
23
-
24
- indexable_resources.each_with_index do |res, idx|
25
- benchmark "Indexing item #{res.druid} in resource #{id} (#{idx} / #{size})" do
26
- doc = to_solr_document(res)
27
- yield base_doc.merge(doc) if doc
28
- end
29
- end
30
- end
31
- end
32
-
33
14
  def resources
34
15
  @resources ||= druids.map do |d|
35
16
  Spotlight::Dor::Resources.indexer.resource d
@@ -37,11 +18,9 @@ module Spotlight::Resources
37
18
  end
38
19
 
39
20
  def druids
40
- @druids ||= druid_list.split("\n").map(&:strip)
21
+ @druids ||= druid_list.split(/\s+/).reject(&:blank?)
41
22
  end
42
23
 
43
- private
44
-
45
24
  ##
46
25
  # Enumerate the resource, and any collection members, that should be indexed
47
26
  # into this exhibit
@@ -58,32 +37,5 @@ module Spotlight::Resources
58
37
  end
59
38
  end
60
39
  end
61
-
62
- ##
63
- # Estimate the number of documents this resource will create
64
- def size
65
- indexable_resources.size
66
- end
67
-
68
- ##
69
- # Generate the solr document hash for a given resource by applying the current
70
- # indexer steps.
71
- #
72
- # @return [Hash]
73
- def to_solr_document(resource)
74
- Spotlight::Dor::Resources.indexer.solr_document(resource)
75
- rescue RuntimeError => e
76
- logger.error("Error processing #{resource.druid}: #{e}")
77
- nil
78
- rescue => e
79
- logger.error("Error processing #{resource.druid}: #{e}")
80
- raise e
81
- end
82
-
83
- ##
84
- # Write any logs (or benchmarking information) from this class to the gdor logs
85
- def logger
86
- Spotlight::Dor::Resources.indexer.logger
87
- end
88
40
  end
89
41
  end
@@ -0,0 +1,62 @@
1
+ module Spotlight
2
+ module Resources
3
+ # Base Resource indexer for objects in DOR
4
+ class DorSolrDocumentBuilder < Spotlight::SolrDocumentBuilder
5
+ include ActiveSupport::Benchmarkable
6
+
7
+ delegate :indexable_resources, to: :resource
8
+
9
+ ##
10
+ # Generate solr documents for the DOR resources identified by this object
11
+ #
12
+ # @return [Enumerator] an enumerator of solr document hashes for indexing
13
+ def to_solr
14
+ return to_enum(:to_solr) { size } unless block_given?
15
+
16
+ benchmark "Indexing resource #{inspect} (est. #{size} items)" do
17
+ base_doc = super
18
+
19
+ indexable_resources.each_with_index do |res, idx|
20
+ benchmark "Indexing item #{res.druid} in resource #{resource_id} (#{idx} / #{size})" do
21
+ doc = to_solr_document(res)
22
+ yield base_doc.merge(doc) if doc
23
+ end
24
+ end
25
+ end
26
+ end
27
+
28
+ private
29
+
30
+ def resource_id
31
+ resource.id
32
+ end
33
+
34
+ ##
35
+ # Estimate the number of documents this resource will create
36
+ def size
37
+ indexable_resources.size
38
+ end
39
+
40
+ ##
41
+ # Generate the solr document hash for a given resource by applying the current
42
+ # indexer steps.
43
+ #
44
+ # @return [Hash]
45
+ def to_solr_document(resource)
46
+ Spotlight::Dor::Resources.indexer.solr_document(resource)
47
+ rescue RuntimeError => e
48
+ logger.error("Error processing #{resource.druid}: #{e}")
49
+ nil
50
+ rescue => e
51
+ logger.error("Error processing #{resource.druid}: #{e}")
52
+ raise e
53
+ end
54
+
55
+ ##
56
+ # Write any logs (or benchmarking information) from this class to the gdor logs
57
+ def logger
58
+ Spotlight::Dor::Resources.indexer.logger
59
+ end
60
+ end
61
+ end
62
+ end
@@ -2,7 +2,7 @@ module Spotlight
2
2
  module Dor
3
3
  # :nodoc:
4
4
  module Resources
5
- VERSION = '1.1.0'.freeze
5
+ VERSION = '2.0.0'.freeze
6
6
  end
7
7
  end
8
8
  end
@@ -1,5 +1,3 @@
1
- require 'spec_helper'
2
-
3
1
  RSpec.describe Spotlight::Resources::DorHarvesterController, type: :controller do
4
2
  routes { Spotlight::Dor::Resources::Engine.routes }
5
3
  let(:resource) { double }
@@ -10,14 +8,11 @@ RSpec.describe Spotlight::Resources::DorHarvesterController, type: :controller d
10
8
  before do
11
9
  sign_in user
12
10
  allow(Spotlight::Resources::DorHarvester).to receive(:instance).and_return(resource)
11
+ expect(resource).to receive(:update).with(attributes)
12
+ allow(resource).to receive(:save_and_index).and_return(save_status)
13
13
  end
14
14
 
15
15
  describe '#create' do
16
- before do
17
- expect(resource).to receive(:update).with(attributes)
18
- allow(resource).to receive(:save_and_index).and_return(save_status)
19
- end
20
-
21
16
  context 'when save is successful' do
22
17
  let(:save_status) { true }
23
18
 
@@ -40,11 +35,6 @@ RSpec.describe Spotlight::Resources::DorHarvesterController, type: :controller d
40
35
  end
41
36
 
42
37
  describe '#update' do
43
- before do
44
- expect(resource).to receive(:update).with(attributes)
45
- allow(resource).to receive(:save_and_index).and_return(save_status)
46
- end
47
-
48
38
  context 'when save is successful' do
49
39
  let(:save_status) { true }
50
40
 
@@ -1,5 +1,3 @@
1
- require 'spec_helper'
2
-
3
1
  describe 'gdor indexing integration test', :vcr do
4
2
  let :exhibit do
5
3
  double(solr_data: {}, blacklight_config: Blacklight::Configuration.new)
@@ -9,7 +7,7 @@ describe 'gdor indexing integration test', :vcr do
9
7
  r = Spotlight::Resources::DorHarvester.new(druid_list: 'xf680rd3068')
10
8
  allow(r).to receive(:to_global_id).and_return('x')
11
9
  allow(r).to receive(:exhibit).and_return(exhibit)
12
- r.to_solr.first
10
+ r.document_builder.to_solr.first
13
11
  end
14
12
 
15
13
  it 'has a doc id' do
@@ -1,5 +1,3 @@
1
- require 'spec_helper'
2
-
3
1
  describe Spotlight::Dor::Indexer do
4
2
  subject { described_class.new }
5
3
 
@@ -24,8 +24,28 @@ describe Spotlight::Resources::DorHarvester do
24
24
  end
25
25
 
26
26
  describe '#druids' do
27
- it 'extracts an array of DRUIDs from the list of druids' do
28
- expect(subject.druids).to match_array 'xf680rd3068'
27
+ context 'with a single item' do
28
+ subject { described_class.new druid_list: 'xf680rd3068' }
29
+
30
+ it 'extracts an array of DRUIDs from the list of druids' do
31
+ expect(subject.druids).to match_array 'xf680rd3068'
32
+ end
33
+ end
34
+
35
+ context 'with multiple items' do
36
+ subject { described_class.new druid_list: "xf680rd3068\nxf680rd3069" }
37
+
38
+ it 'extracts an array of DRUIDs from the list of druids' do
39
+ expect(subject.druids).to match_array %w(xf680rd3068 xf680rd3069)
40
+ end
41
+ end
42
+
43
+ context 'with crazy whitespace' do
44
+ subject { described_class.new druid_list: "\t xf680rd3068\t\r\nxf680rd3067\t\t" }
45
+
46
+ it 'extracts an array of DRUIDs from the list of druids' do
47
+ expect(subject.druids).to match_array %w(xf680rd3068 xf680rd3067)
48
+ end
29
49
  end
30
50
  end
31
51
 
@@ -61,53 +81,4 @@ describe Spotlight::Resources::DorHarvester do
61
81
  subject.reindex
62
82
  end
63
83
  end
64
-
65
- describe '#to_solr' do
66
- before do
67
- allow(Spotlight::Dor::Resources.indexer).to receive(:solr_document)
68
- end
69
-
70
- context 'with a collection' do
71
- before do
72
- allow(resource).to receive(:collection?).and_return(true)
73
- end
74
-
75
- it 'provides a solr document for the collection' do
76
- allow(resource).to receive(:items).and_return([])
77
- expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(resource).and_return(upstream: true)
78
- expect(subject.to_solr.first).to include :upstream, :spotlight_resource_id_ssim, :spotlight_resource_type_ssim
79
- end
80
-
81
- it 'provides a solr document for the items too' do
82
- item = double(druid: 'xyz')
83
- allow(resource).to receive(:items).and_return([item])
84
- expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(resource).and_return(collection: true)
85
- expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(item).and_return(item: true)
86
- solr_doc = subject.to_solr.to_a
87
- expect(solr_doc.first).to include :collection
88
- expect(solr_doc.last).to include :item
89
- end
90
-
91
- it 'traps indexing errors' do
92
- allow(resource).to receive(:items).and_return([])
93
- expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).and_raise(RuntimeError.new)
94
- expect { subject.to_solr.to_a }.not_to raise_error
95
- end
96
-
97
- it 'log and raises other types of errors errors' do
98
- allow(resource).to receive(:items).and_return([])
99
- expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).and_raise(StandardError.new)
100
- expect(subject.send(:logger)).to receive(:error).with(/Error processing xf680rd3068/)
101
- expect { subject.to_solr.to_a }.to raise_error StandardError
102
- end
103
- end
104
-
105
- context 'with a single item' do
106
- it 'provides a solr document for the resource' do
107
- allow(resource).to receive(:collection?).and_return(false)
108
- expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(resource).and_return(upstream: true)
109
- expect(subject.to_solr.first).to include :upstream, :spotlight_resource_id_ssim, :spotlight_resource_type_ssim
110
- end
111
- end
112
- end
113
84
  end
@@ -0,0 +1,74 @@
1
+ require 'spec_helper'
2
+
3
+ describe Spotlight::Resources::DorSolrDocumentBuilder do
4
+ let(:exhibit) { FactoryGirl.create(:exhibit) }
5
+
6
+ let :blacklight_solr do
7
+ double
8
+ end
9
+
10
+ subject { described_class.new harvester }
11
+ let(:harvester) { Spotlight::Resources::DorHarvester.new druid_list: 'xf680rd3068', exhibit: exhibit }
12
+
13
+ before do
14
+ allow(harvester).to receive(:blacklight_solr).and_return(blacklight_solr)
15
+ allow(harvester).to receive(:to_global_id).and_return('x')
16
+ end
17
+
18
+ let(:resource) { harvester.resources.first }
19
+
20
+ describe '#to_solr' do
21
+ before do
22
+ allow(Spotlight::Dor::Resources.indexer).to receive(:solr_document)
23
+ end
24
+
25
+ context 'with a collection' do
26
+ before do
27
+ allow(resource).to receive(:collection?).and_return(true)
28
+ end
29
+
30
+ it 'provides a solr document for the collection' do
31
+ allow(resource).to receive(:items).and_return([])
32
+ expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(resource).and_return(upstream: true)
33
+ expect(subject.to_solr.first).to include :upstream, :spotlight_resource_id_ssim, :spotlight_resource_type_ssim
34
+ end
35
+
36
+ context 'with items' do
37
+ let(:item) { instance_double('Harvestdor::Indexer::Resource', druid: 'xyz') }
38
+
39
+ before do
40
+ allow(resource).to receive(:items).and_return([item])
41
+ end
42
+
43
+ it 'provides a solr document for the items too' do
44
+ expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(resource).and_return(collection: true)
45
+ expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(item).and_return(item: true)
46
+ solr_doc = subject.to_solr.to_a
47
+ expect(solr_doc.first).to include :collection
48
+ expect(solr_doc.last).to include :item
49
+ end
50
+ end
51
+
52
+ it 'traps indexing errors' do
53
+ allow(resource).to receive(:items).and_return([])
54
+ expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).and_raise(RuntimeError.new)
55
+ expect { subject.to_solr.to_a }.not_to raise_error
56
+ end
57
+
58
+ it 'log and raises other types of errors errors' do
59
+ allow(resource).to receive(:items).and_return([])
60
+ expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).and_raise(StandardError.new)
61
+ expect(subject.send(:logger)).to receive(:error).with(/Error processing xf680rd3068/)
62
+ expect { subject.to_solr.to_a }.to raise_error StandardError
63
+ end
64
+ end
65
+
66
+ context 'with a single item' do
67
+ it 'provides a solr document for the resource' do
68
+ allow(resource).to receive(:collection?).and_return(false)
69
+ expect(Spotlight::Dor::Resources.indexer).to receive(:solr_document).with(resource).and_return(upstream: true)
70
+ expect(subject.to_solr.first).to include :upstream, :spotlight_resource_id_ssim, :spotlight_resource_type_ssim
71
+ end
72
+ end
73
+ end
74
+ end
@@ -30,7 +30,6 @@ FactoryGirl.find_definitions
30
30
  require 'database_cleaner'
31
31
  require 'spotlight'
32
32
 
33
-
34
33
  Dir["./spec/support/**/*.rb"].sort.each {|f| require f}
35
34
 
36
35
  VCR.configure do |config|
@@ -56,8 +55,13 @@ RSpec.configure do |config|
56
55
  DatabaseCleaner.clean
57
56
  end
58
57
 
59
- config.include Devise::TestHelpers, type: :controller
60
- config.include Devise::TestHelpers, type: :view
58
+ if defined? Devise::Test::ControllerHelpers
59
+ config.include Devise::Test::ControllerHelpers, type: :controller
60
+ config.include Devise::Test::ControllerHelpers, type: :view
61
+ else
62
+ config.include Devise::TestHelpers, type: :controller
63
+ config.include Devise::TestHelpers, type: :view
64
+ end
61
65
  config.include Warden::Test::Helpers, type: :feature
62
66
  config.after(:each, type: :feature) { Warden.test_reset! }
63
67
  config.include Capybara::DSL
@@ -36,7 +36,11 @@ class TestAppGenerator < Rails::Generators::Base
36
36
  def configure_gdor
37
37
  copy_file 'gdor.yml', 'config/gdor.yml', force: true
38
38
  end
39
-
39
+
40
+ def configure_papertrail
41
+ copy_file 'paper_trail.rb', 'config/initializers/paper_trail.rb'
42
+ end
43
+
40
44
  def run_spotlight_dor_resources_generator
41
45
  generate 'spotlight:dor:resources:install'
42
46
  end
@@ -0,0 +1 @@
1
+ PaperTrail.config.track_associations = false
@@ -24,9 +24,9 @@ Gem::Specification.new do |spec|
24
24
  spec.add_dependency 'solrizer'
25
25
  spec.add_dependency 'gdor-indexer', '>=0.5.0' # for new pub date methods
26
26
  # newer versions of harvestdor-indexer have performance improvements for collections
27
- spec.add_dependency 'harvestdor-indexer', '~> 2.3'
27
+ spec.add_dependency 'harvestdor-indexer', '~> 2.3', '>= 2.3.2'
28
28
  spec.add_dependency 'rails'
29
- spec.add_dependency 'blacklight-spotlight', '~> 0.18'
29
+ spec.add_dependency 'blacklight-spotlight', '~> 0.19'
30
30
  spec.add_dependency 'parallel'
31
31
  spec.add_dependency 'stanford-mods', '~> 2.1'
32
32
  spec.add_development_dependency 'bundler', '~> 1.5'
@@ -42,10 +42,11 @@ Gem::Specification.new do |spec|
42
42
  spec.add_development_dependency 'exhibits_solr_conf', '~> 0.1'
43
43
  spec.add_development_dependency 'factory_girl_rails'
44
44
  spec.add_development_dependency 'rubocop', '~> 0.36'
45
+ spec.add_development_dependency 'riiif', '~> 0.4.0' # optional dependency in production
45
46
 
46
47
  # FIXME: we shouldn't need explicit sitemap_generator dependency here as it should come with spotlight
47
48
  # but travis fails without it (though tests run fine locally)
48
- # cbeer: "we're injecting the dependency into the host app. maybe we're just
49
- # missing a `bundle install` somewhere to fix that up"
49
+ # cbeer: "we're injecting the dependency into the host app.
50
+ # maybe we're just missing a `bundle install` somewhere to fix that up"
50
51
  spec.add_development_dependency 'sitemap_generator'
51
52
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spotlight-dor-resources
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Beer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-08 00:00:00.000000000 Z
11
+ date: 2016-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -59,6 +59,9 @@ dependencies:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '2.3'
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 2.3.2
62
65
  type: :runtime
63
66
  prerelease: false
64
67
  version_requirements: !ruby/object:Gem::Requirement
@@ -66,6 +69,9 @@ dependencies:
66
69
  - - "~>"
67
70
  - !ruby/object:Gem::Version
68
71
  version: '2.3'
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 2.3.2
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: rails
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +92,14 @@ dependencies:
86
92
  requirements:
87
93
  - - "~>"
88
94
  - !ruby/object:Gem::Version
89
- version: '0.18'
95
+ version: '0.19'
90
96
  type: :runtime
91
97
  prerelease: false
92
98
  version_requirements: !ruby/object:Gem::Requirement
93
99
  requirements:
94
100
  - - "~>"
95
101
  - !ruby/object:Gem::Version
96
- version: '0.18'
102
+ version: '0.19'
97
103
  - !ruby/object:Gem::Dependency
98
104
  name: parallel
99
105
  requirement: !ruby/object:Gem::Requirement
@@ -304,6 +310,20 @@ dependencies:
304
310
  - - "~>"
305
311
  - !ruby/object:Gem::Version
306
312
  version: '0.36'
313
+ - !ruby/object:Gem::Dependency
314
+ name: riiif
315
+ requirement: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - "~>"
318
+ - !ruby/object:Gem::Version
319
+ version: 0.4.0
320
+ type: :development
321
+ prerelease: false
322
+ version_requirements: !ruby/object:Gem::Requirement
323
+ requirements:
324
+ - - "~>"
325
+ - !ruby/object:Gem::Version
326
+ version: 0.4.0
307
327
  - !ruby/object:Gem::Dependency
308
328
  name: sitemap_generator
309
329
  requirement: !ruby/object:Gem::Requirement
@@ -327,6 +347,7 @@ extra_rdoc_files: []
327
347
  files:
328
348
  - ".gitignore"
329
349
  - ".hound.yml"
350
+ - ".rspec"
330
351
  - ".rubocop.yml"
331
352
  - ".rubocop_todo.yml"
332
353
  - ".travis.yml"
@@ -336,6 +357,7 @@ files:
336
357
  - Rakefile
337
358
  - app/controllers/spotlight/resources/dor_harvester_controller.rb
338
359
  - app/models/spotlight/resources/dor_harvester.rb
360
+ - app/services/spotlight/resources/dor_solr_document_builder.rb
339
361
  - app/views/spotlight/resources/dor_harvester/_form.html.erb
340
362
  - config/locales/spotlight-dor-resources.en.yml
341
363
  - config/routes.rb
@@ -348,10 +370,12 @@ files:
348
370
  - spec/integration/gdor_integration_spec.rb
349
371
  - spec/lib/spotlight/dor/indexer_spec.rb
350
372
  - spec/models/spotlight/resources/dor_harvester_spec.rb
373
+ - spec/services/spotlight/resources/dor_solr_document_builder_spec.rb
351
374
  - spec/spec_helper.rb
352
375
  - spec/test_app_templates/catalog_controller.rb
353
376
  - spec/test_app_templates/gdor.yml
354
377
  - spec/test_app_templates/lib/generators/test_app_generator.rb
378
+ - spec/test_app_templates/paper_trail.rb
355
379
  - spec/vcr_cassettes/gdor_indexing_integration_test/has_a_doc_id.yml
356
380
  - spec/vcr_cassettes/gdor_indexing_integration_test/has_exhibit-specific_indexing.yml
357
381
  - spec/vcr_cassettes/gdor_indexing_integration_test/has_spotlight_data.yml
@@ -377,7 +401,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
377
401
  version: '0'
378
402
  requirements: []
379
403
  rubyforge_project:
380
- rubygems_version: 2.5.1
404
+ rubygems_version: 2.6.4
381
405
  signing_key:
382
406
  specification_version: 4
383
407
  summary: Spotlight resource indexer for DOR resources.
@@ -386,10 +410,12 @@ test_files:
386
410
  - spec/integration/gdor_integration_spec.rb
387
411
  - spec/lib/spotlight/dor/indexer_spec.rb
388
412
  - spec/models/spotlight/resources/dor_harvester_spec.rb
413
+ - spec/services/spotlight/resources/dor_solr_document_builder_spec.rb
389
414
  - spec/spec_helper.rb
390
415
  - spec/test_app_templates/catalog_controller.rb
391
416
  - spec/test_app_templates/gdor.yml
392
417
  - spec/test_app_templates/lib/generators/test_app_generator.rb
418
+ - spec/test_app_templates/paper_trail.rb
393
419
  - spec/vcr_cassettes/gdor_indexing_integration_test/has_a_doc_id.yml
394
420
  - spec/vcr_cassettes/gdor_indexing_integration_test/has_exhibit-specific_indexing.yml
395
421
  - spec/vcr_cassettes/gdor_indexing_integration_test/has_spotlight_data.yml