hyrax 2.4.1 → 2.5.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.
Files changed (56) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +139 -69
  3. data/.travis.yml +4 -1
  4. data/README.md +2 -2
  5. data/app/actors/hyrax/actors/transactional_request.rb +8 -8
  6. data/app/services/hyrax/default_middleware_stack.rb +4 -2
  7. data/app/views/catalog/_thumbnail_list_collection.html.erb +3 -2
  8. data/hyrax.gemspec +3 -6
  9. data/lib/hyrax/version.rb +1 -1
  10. data/spec/abilities/collection_ability_spec.rb +5 -5
  11. data/spec/abilities/permission_template_ability_spec.rb +1 -1
  12. data/spec/actors/hyrax/actors/collections_membership_actor_spec.rb +5 -5
  13. data/spec/actors/hyrax/actors/transactional_request_spec.rb +4 -2
  14. data/spec/controllers/catalog_controller_spec.rb +1 -1
  15. data/spec/controllers/hyrax/admin/collection_types_controller_spec.rb +1 -1
  16. data/spec/controllers/hyrax/batch_edits_controller_spec.rb +9 -9
  17. data/spec/controllers/hyrax/collections_controller_spec.rb +5 -5
  18. data/spec/controllers/hyrax/dashboard/collection_members_controller_spec.rb +16 -13
  19. data/spec/controllers/hyrax/dashboard/collections_controller_spec.rb +8 -8
  20. data/spec/controllers/hyrax/dashboard/nest_collections_controller_spec.rb +1 -1
  21. data/spec/controllers/hyrax/generic_works_controller_spec.rb +1 -1
  22. data/spec/controllers/hyrax/my/shares_controller_spec.rb +1 -1
  23. data/spec/features/actor_stack_spec.rb +48 -0
  24. data/spec/features/catalog_search_spec.rb +2 -2
  25. data/spec/features/collection_multi_membership_spec.rb +2 -2
  26. data/spec/features/collection_spec.rb +7 -7
  27. data/spec/features/collection_type_spec.rb +2 -2
  28. data/spec/features/dashboard/collection_spec.rb +15 -15
  29. data/spec/features/search_spec.rb +2 -2
  30. data/spec/features/work_show_spec.rb +5 -2
  31. data/spec/forms/hyrax/forms/collection_form_spec.rb +5 -5
  32. data/spec/forms/hyrax/forms/permission_template_form_spec.rb +1 -1
  33. data/spec/indexers/hyrax/collection_indexer_spec.rb +1 -1
  34. data/spec/jobs/characterize_job_spec.rb +1 -1
  35. data/spec/lib/hyrax/resource_sync/change_list_writer_spec.rb +35 -21
  36. data/spec/lib/hyrax/resource_sync/resource_list_writer_spec.rb +1 -1
  37. data/spec/models/collection_spec.rb +18 -18
  38. data/spec/models/concerns/hyrax/collection_nesting_spec.rb +2 -2
  39. data/spec/models/hyrax/collection_type_spec.rb +2 -2
  40. data/spec/presenters/hyrax/collection_presenter_spec.rb +11 -11
  41. data/spec/search_builders/hyrax/collection_member_search_builder_spec.rb +1 -1
  42. data/spec/search_builders/hyrax/collection_search_builder_spec.rb +1 -1
  43. data/spec/search_builders/hyrax/dashboard/nested_collections_search_builder_spec.rb +1 -1
  44. data/spec/search_builders/hyrax/work_relation_spec.rb +1 -1
  45. data/spec/services/hyrax/adapters/nesting_index_adapter_spec.rb +2 -2
  46. data/spec/services/hyrax/collections/collection_member_service_spec.rb +2 -2
  47. data/spec/services/hyrax/collections/migration_service_spec.rb +27 -27
  48. data/spec/services/hyrax/collections/nested_collection_persistence_service_spec.rb +1 -1
  49. data/spec/services/hyrax/collections/nested_collection_query_service_spec.rb +38 -38
  50. data/spec/services/hyrax/statistics/depositors/summary_spec.rb +1 -1
  51. data/spec/services/hyrax/statistics/works/by_resource_type_spec.rb +11 -4
  52. data/spec/spec_helper.rb +10 -8
  53. data/spec/support/selectors.rb +10 -1
  54. data/spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb +38 -5
  55. data/template.rb +3 -1
  56. metadata +23 -21
@@ -9,7 +9,7 @@ RSpec.describe 'searching' do
9
9
  end
10
10
 
11
11
  let!(:collection) do
12
- create(:public_collection, title: ['collection title abc'], description: [subject_value], user: user, members: [work])
12
+ create(:public_collection_lw, title: ['collection title abc'], description: [subject_value], user: user, members: [work])
13
13
  end
14
14
 
15
15
  context "as a public user", :clean_repo do
@@ -53,7 +53,7 @@ RSpec.describe 'searching' do
53
53
  expect(page).to have_content('Search Results')
54
54
  expect(page).to have_content "Toothbrush"
55
55
  expect(page).to have_content('collection title abc')
56
- expect(page).to have_css("span.collection-icon-search")
56
+ expect(page).to have_selector("//img")
57
57
 
58
58
  expect(page.body).to include "<span itemprop=\"keywords\"><a href=\"/catalog?f%5Bkeyword_sim%5D%5B%5D=taco&amp;locale=en\">taco</a></span>"
59
59
  expect(page.body).to include "<span itemprop=\"keywords\"><a href=\"/catalog?f%5Bkeyword_sim%5D%5B%5D=mustache&amp;locale=en\">mustache</a></span>"
@@ -53,11 +53,14 @@ RSpec.describe "work show view" do
53
53
  it "allows adding work to a collection", clean_repo: true, js: true do
54
54
  optional 'ability to get capybara to find css select2-result (see Issue #3038)' if ci_build?
55
55
  click_button "Add to collection" # opens the modal
56
- select_member_of_collection(collection)
56
+ # Really ensure that this Collection model is persisted
57
+ Collection.all.map(&:destroy!)
58
+ persisted_collection = create(:collection_lw, user: user, collection_type_gid: multi_membership_type_1.gid)
59
+ select_member_of_collection(persisted_collection)
57
60
  click_button 'Save changes'
58
61
 
59
62
  # forwards to collection show page
60
- expect(page).to have_content collection.title.first
63
+ expect(page).to have_content persisted_collection.title.first
61
64
  expect(page).to have_content work.title.first
62
65
  expect(page).to have_selector '.alert-success', text: 'Collection was successfully updated.'
63
66
  end
@@ -24,7 +24,7 @@ RSpec.describe Hyrax::Forms::CollectionForm do
24
24
  end
25
25
  end
26
26
 
27
- let(:collection) { build(:collection) }
27
+ let(:collection) { build(:collection_lw) }
28
28
  let(:ability) { Ability.new(create(:user)) }
29
29
  let(:repository) { double }
30
30
  let(:form) { described_class.new(collection, ability, repository) }
@@ -74,8 +74,8 @@ RSpec.describe Hyrax::Forms::CollectionForm do
74
74
  end
75
75
 
76
76
  context "nested relationships" do
77
- let(:child_collection) { build(:collection) }
78
- let(:parent_collection) { build(:collection) }
77
+ let(:child_collection) { build(:collection_lw) }
78
+ let(:parent_collection) { build(:collection_lw) }
79
79
  let(:service_object) { double(available_member_subcollections: double(documents: [child_collection])) }
80
80
 
81
81
  before do
@@ -174,7 +174,7 @@ RSpec.describe Hyrax::Forms::CollectionForm do
174
174
  subject { form.permission_template }
175
175
 
176
176
  context "when the PermissionTemplate doesn't exist" do
177
- let(:model) { create(:collection) }
177
+ let(:model) { build(:collection_lw) }
178
178
 
179
179
  it "gets created" do
180
180
  expect(subject).to be_instance_of Hyrax::Forms::PermissionTemplateForm
@@ -185,7 +185,7 @@ RSpec.describe Hyrax::Forms::CollectionForm do
185
185
  context "when the PermissionTemplate exists" do
186
186
  let(:form) { described_class.new(model, ability, repository) }
187
187
  let(:permission_template) { Hyrax::PermissionTemplate.find_by(source_id: model.id) }
188
- let(:model) { create(:collection, with_permission_template: true) }
188
+ let(:model) { build(:collection_lw, with_permission_template: true) }
189
189
 
190
190
  it "uses the existing template" do
191
191
  expect(subject).to be_instance_of Hyrax::Forms::PermissionTemplateForm
@@ -3,7 +3,7 @@ RSpec.describe Hyrax::Forms::PermissionTemplateForm do
3
3
  let(:form) { described_class.new(permission_template) }
4
4
  let(:today) { Time.zone.today }
5
5
  let(:admin_set) { create(:admin_set) }
6
- let(:collection) { create(:collection) }
6
+ let(:collection) { build(:collection_lw) }
7
7
 
8
8
  subject { form }
9
9
 
@@ -1,6 +1,6 @@
1
1
  RSpec.describe Hyrax::CollectionIndexer do
2
2
  let(:indexer) { described_class.new(collection) }
3
- let(:collection) { build(:collection) }
3
+ let(:collection) { build(:collection_lw) }
4
4
  let(:col1id) { 'col1' }
5
5
  let(:col2id) { 'col2' }
6
6
  let(:col1title) { 'col1 title' }
@@ -52,7 +52,7 @@ RSpec.describe CharacterizeJob do
52
52
 
53
53
  context "when the file set's work is in a collection" do
54
54
  let(:work) { build(:generic_work) }
55
- let(:collection) { build(:collection) }
55
+ let(:collection) { build(:collection_lw) }
56
56
 
57
57
  before do
58
58
  allow(file_set).to receive(:parent).and_return(work)
@@ -10,6 +10,27 @@ RSpec.describe Hyrax::ResourceSync::ChangeListWriter, :clean_repo do
10
10
  described_class.new(resource_host: 'example.com',
11
11
  capability_list_url: capability_list)
12
12
  end
13
+ let(:namespaces) do
14
+ {
15
+ 'rs' => "http://www.openarchives.org/rs/terms/",
16
+ 'x' => sitemap
17
+ }
18
+ end
19
+ let(:capability_element) { xml.xpath('//rs:ln/@href', 'rs' => "http://www.openarchives.org/rs/terms/") }
20
+ # The creation and modified dates are used in order to determine whether or
21
+ # not the status is "created" or "updated"
22
+ # This avoids any potential delays/conflicts when testing against Solr and
23
+ # Fedora within the testing environment
24
+ # @see Hyrax::ResourceSync::ChangeListWriter#build_resource
25
+ let(:file_set_status) do
26
+ file_set.create_date.to_i == file_set.modified_date.to_i ? 'created' : 'updated'
27
+ end
28
+ let(:public_work_status) do
29
+ public_work.create_date.to_i == public_work.modified_date.to_i ? 'created' : 'updated'
30
+ end
31
+ let(:public_collection_status) do
32
+ public_collection.create_date.to_i == public_collection.modified_date.to_i ? 'created' : 'updated'
33
+ end
13
34
 
14
35
  subject { instance.write }
15
36
 
@@ -22,43 +43,36 @@ RSpec.describe Hyrax::ResourceSync::ChangeListWriter, :clean_repo do
22
43
  context "when resources exist" do
23
44
  before do
24
45
  # These private items should not show up.
25
- create(:private_collection)
46
+ build(:private_collection_lw)
26
47
  create(:work)
27
48
 
28
- # Sleep in between to ensure modified dates are different
29
49
  public_collection
30
- sleep(1)
31
50
  public_work
32
- sleep(1)
33
51
  file_set
34
52
  end
35
53
 
36
54
  it "has a list of resources" do
37
- capability = xml.xpath('//rs:ln/@href', 'rs' => "http://www.openarchives.org/rs/terms/").text
38
- expect(capability).to eq capability_list
39
-
40
- expect(location(1)).to eq "http://example.com/concern/file_sets/#{file_set.id}"
41
- expect(change(1)).to eq "created"
42
-
43
- expect(location(2)).to eq "http://example.com/concern/generic_works/#{public_work.id}"
44
- expect(change(2)).to eq "created"
45
-
46
- expect(location(3)).to eq "http://example.com/collections/#{public_collection.id}"
47
- expect(change(3)).to eq "created"
55
+ expect(capability_element.text).to eq capability_list
56
+ locations = location_elements(namespaces).map(&:text)
57
+ expect(locations).to include "http://example.com/concern/file_sets/#{file_set.id}"
58
+ expect(locations).to include "http://example.com/concern/generic_works/#{public_work.id}"
59
+ expect(locations).to include "http://example.com/collections/#{public_collection.id}"
60
+ changed = changed_elements(namespaces).map(&:value)
61
+ expect(changed).to match_array([public_collection_status, public_work_status, file_set_status])
48
62
 
49
63
  expect(url_list.count).to eq 3
50
64
  end
51
65
  end
52
66
 
53
- def change(n)
54
- query(n, 'rs:md/@change', 'rs' => "http://www.openarchives.org/rs/terms/")
67
+ def changed_elements(namespaces = {})
68
+ query("rs:md/@change", namespaces)
55
69
  end
56
70
 
57
- def location(n)
58
- query(n, 'x:loc')
71
+ def location_elements(namespaces = {})
72
+ query("x:loc", namespaces)
59
73
  end
60
74
 
61
- def query(n, part, ns = {})
62
- xml.xpath("//x:url[#{n}]/#{part}", ns.merge('x' => sitemap)).text
75
+ def query(part, ns = {})
76
+ xml.xpath("//x:url/#{part}", ns)
63
77
  end
64
78
  end
@@ -1,6 +1,6 @@
1
1
  RSpec.describe Hyrax::ResourceSync::ResourceListWriter, :clean_repo do
2
2
  let(:sitemap) { 'http://www.sitemaps.org/schemas/sitemap/0.9' }
3
- let!(:private_collection) { create(:private_collection) }
3
+ let!(:private_collection) { build(:private_collection_lw) }
4
4
  let!(:public_collection) { create(:public_collection) }
5
5
  let!(:public_work) { create(:public_generic_work) }
6
6
  let!(:private_work) { create(:work) }
@@ -1,5 +1,5 @@
1
1
  RSpec.describe Collection, type: :model do
2
- let(:collection) { build(:public_collection) }
2
+ let(:collection) { build(:public_collection_lw) }
3
3
 
4
4
  it "has open visibility" do
5
5
  expect(collection.read_groups).to eq ['public']
@@ -15,7 +15,7 @@ RSpec.describe Collection, type: :model do
15
15
 
16
16
  describe "#to_solr" do
17
17
  let(:user) { build(:user) }
18
- let(:collection) { build(:collection, user: user, title: ['A good title']) }
18
+ let(:collection) { build(:collection_lw, user: user, title: ['A good title']) }
19
19
 
20
20
  let(:solr_document) { collection.to_solr }
21
21
 
@@ -40,7 +40,7 @@ RSpec.describe Collection, type: :model do
40
40
  end
41
41
 
42
42
  describe "#members_objects", clean_repo: true do
43
- let(:collection) { create(:collection) }
43
+ let(:collection) { create(:collection_lw) }
44
44
 
45
45
  it "is empty by default" do
46
46
  expect(collection.member_objects).to match_array []
@@ -80,7 +80,7 @@ RSpec.describe Collection, type: :model do
80
80
  end
81
81
 
82
82
  describe "#destroy", clean_repo: true do
83
- let(:collection) { build(:collection) }
83
+ let(:collection) { build(:collection_lw) }
84
84
  let(:work1) { create(:work) }
85
85
 
86
86
  before do
@@ -130,7 +130,7 @@ RSpec.describe Collection, type: :model do
130
130
  end
131
131
 
132
132
  describe '#collection_type_gid=' do
133
- let(:collection) { build(:collection) }
133
+ let(:collection) { build(:collection_lw) }
134
134
  let(:collection_type) { create(:collection_type) }
135
135
 
136
136
  it 'sets gid' do
@@ -170,7 +170,7 @@ RSpec.describe Collection, type: :model do
170
170
  end
171
171
 
172
172
  describe 'collection type delegated methods' do
173
- subject { build(:collection) }
173
+ subject { build(:collection_lw) }
174
174
 
175
175
  it { is_expected.to delegate_method(:nestable?).to(:collection_type) }
176
176
  it { is_expected.to delegate_method(:discoverable?).to(:collection_type) }
@@ -185,7 +185,7 @@ RSpec.describe Collection, type: :model do
185
185
 
186
186
  describe '.after_destroy' do
187
187
  it 'will destroy the associated permission template' do
188
- collection = create(:collection, with_permission_template: true)
188
+ collection = build(:collection_lw, with_permission_template: true)
189
189
  expect { collection.destroy }.to change { Hyrax::PermissionTemplate.count }.by(-1)
190
190
  end
191
191
  end
@@ -193,7 +193,7 @@ RSpec.describe Collection, type: :model do
193
193
  describe '#reset_access_controls!' do
194
194
  let!(:user) { build(:user) }
195
195
  let(:collection_type) { create(:collection_type) }
196
- let!(:collection) { create(:collection, user: user, collection_type_gid: collection_type.gid) }
196
+ let!(:collection) { build(:collection_lw, user: user, collection_type_gid: collection_type.gid) }
197
197
  let!(:permission_template) { build(:permission_template) }
198
198
 
199
199
  before do
@@ -236,20 +236,20 @@ RSpec.describe Collection, type: :model do
236
236
 
237
237
  describe 'permission template' do
238
238
  it 'will be created when with_permission_template is true' do
239
- expect { create(:collection, with_permission_template: true) }.to change { Hyrax::PermissionTemplate.count }.by(1)
239
+ expect { build(:collection_lw, with_permission_template: true) }.to change { Hyrax::PermissionTemplate.count }.by(1)
240
240
  end
241
241
 
242
242
  it 'will be created when with_permission_template is set to attributes identifying access' do
243
- expect { create(:collection, with_permission_template: { manage_users: [user] }) }.to change { Hyrax::PermissionTemplate.count }.by(1)
244
- expect { create(:collection, with_permission_template: { manage_users: [user], deposit_users: [user] }) }.to change { Hyrax::PermissionTemplate.count }.by(1)
243
+ expect { build(:collection_lw, with_permission_template: { manage_users: [user] }) }.to change { Hyrax::PermissionTemplate.count }.by(1)
244
+ expect { build(:collection_lw, with_permission_template: { manage_users: [user], deposit_users: [user] }) }.to change { Hyrax::PermissionTemplate.count }.by(1)
245
245
  end
246
246
 
247
247
  it 'will be created when create_access is true' do
248
- expect { create(:collection, create_access: true) }.to change { Hyrax::PermissionTemplate.count }.by(1)
248
+ expect { create(:collection_lw, with_permission_template: true) }.to change { Hyrax::PermissionTemplate.count }.by(1)
249
249
  end
250
250
 
251
251
  it 'will not be created by default' do
252
- expect { create(:collection) }.not_to change { Hyrax::PermissionTemplate.count }
252
+ expect { build(:collection_lw) }.not_to change { Hyrax::PermissionTemplate.count }
253
253
  end
254
254
  end
255
255
 
@@ -264,11 +264,11 @@ RSpec.describe Collection, type: :model do
264
264
  end
265
265
 
266
266
  it 'will be created when create_access is true' do
267
- expect { create(:collection, user: user, create_access: true) }.to change { Hyrax::PermissionTemplate.count }.by(1)
267
+ expect { build(:collection_lw, user: user, with_permission_template: true) }.to change { Hyrax::PermissionTemplate.count }.by(1)
268
268
  end
269
269
 
270
270
  it 'will not be created by default' do
271
- expect { create(:collection) }.not_to change { Hyrax::PermissionTemplateAccess.count }
271
+ expect { build(:collection_lw) }.not_to change { Hyrax::PermissionTemplateAccess.count }
272
272
  end
273
273
  end
274
274
 
@@ -293,7 +293,7 @@ RSpec.describe Collection, type: :model do
293
293
 
294
294
  context 'when building a collection' do
295
295
  let(:coll123) do
296
- build(:collection,
296
+ build(:collection_lw,
297
297
  id: 'Collection123',
298
298
  collection_type_gid: collection_type.gid,
299
299
  with_nesting_attributes:
@@ -318,8 +318,8 @@ RSpec.describe Collection, type: :model do
318
318
  end
319
319
 
320
320
  describe '#update_nested_collection_relationship_indices', :with_nested_reindexing do
321
- it 'will be called after save' do
322
- expect(Samvera::NestingIndexer).to receive(:reindex_relationships).with(id: kind_of(String), extent: kind_of(String))
321
+ it 'will be called once for the Collection resource and once for the nested ACL permission resource' do
322
+ expect(Samvera::NestingIndexer).to receive(:reindex_relationships).exactly(2).times.with(id: kind_of(String), extent: kind_of(String))
323
323
  collection.save!
324
324
  end
325
325
  end
@@ -31,8 +31,8 @@ RSpec.describe Hyrax::CollectionNesting do
31
31
  end
32
32
 
33
33
  let(:user) { create(:user) }
34
- let!(:collection) { create(:collection, collection_type_settings: [:nestable]) }
35
- let!(:child_collection) { create(:collection, collection_type_settings: [:nestable]) }
34
+ let!(:collection) { build(:collection_lw, collection_type_settings: [:nestable]) }
35
+ let!(:child_collection) { create(:collection_lw, collection_type_settings: [:nestable]) }
36
36
  let(:extent) { Hyrax::Adapters::NestingIndexAdapter::FULL_REINDEX }
37
37
 
38
38
  before do
@@ -134,7 +134,7 @@ RSpec.describe Hyrax::CollectionType, type: :model do
134
134
  end
135
135
 
136
136
  describe "collections" do
137
- let!(:collection) { create(:collection, collection_type_gid: collection_type.gid.to_s) }
137
+ let!(:collection) { create(:collection_lw, collection_type_gid: collection_type.gid.to_s) }
138
138
  let(:collection_type) { create(:collection_type) }
139
139
 
140
140
  it 'returns collections of this collection type' do
@@ -151,7 +151,7 @@ RSpec.describe Hyrax::CollectionType, type: :model do
151
151
  let(:collection_type) { create(:collection_type) }
152
152
 
153
153
  it 'returns true if there are any collections of this collection type' do
154
- create(:collection, collection_type_gid: collection_type.gid.to_s)
154
+ create(:collection_lw, collection_type_gid: collection_type.gid.to_s)
155
155
  expect(collection_type).to have_collections
156
156
  end
157
157
  it 'returns false if there are not any collections of this collection type' do
@@ -11,7 +11,7 @@ RSpec.describe Hyrax::CollectionPresenter do
11
11
  end
12
12
 
13
13
  let(:collection) do
14
- build(:collection,
14
+ build(:collection_lw,
15
15
  id: 'adc12v',
16
16
  description: ['a nice collection'],
17
17
  based_near: ['Over there'],
@@ -61,7 +61,7 @@ RSpec.describe Hyrax::CollectionPresenter do
61
61
  let(:collection_type) { create(:collection_type) }
62
62
 
63
63
  describe 'when solr_document#collection_type_gid exists' do
64
- let(:collection) { build(:collection, collection_type_gid: collection_type.gid) }
64
+ let(:collection) { build(:collection_lw, collection_type_gid: collection_type.gid) }
65
65
  let(:solr_doc) { SolrDocument.new(collection.to_solr) }
66
66
 
67
67
  it 'finds the collection type based on the solr_document#collection_type_gid if one exists' do
@@ -173,7 +173,7 @@ RSpec.describe Hyrax::CollectionPresenter do
173
173
  end
174
174
 
175
175
  context "collection with private collection" do
176
- let!(:work) { create(:private_collection, member_of_collections: [collection]) }
176
+ let!(:work) { build(:private_collection_lw, member_of_collections: [collection]) }
177
177
 
178
178
  it { is_expected.to eq 0 }
179
179
  end
@@ -185,14 +185,14 @@ RSpec.describe Hyrax::CollectionPresenter do
185
185
  end
186
186
 
187
187
  context "collection with public collection" do
188
- let!(:subcollection) { create(:public_collection, member_of_collections: [collection]) }
188
+ let!(:subcollection) { create(:public_collection_lw, member_of_collections: [collection]) }
189
189
 
190
190
  it { is_expected.to eq 1 }
191
191
  end
192
192
 
193
193
  context "collection with public work and sub-collection" do
194
194
  let!(:work) { create(:public_work, member_of_collections: [collection]) }
195
- let!(:subcollection) { create(:public_collection, member_of_collections: [collection]) }
195
+ let!(:subcollection) { create(:public_collection_lw, member_of_collections: [collection]) }
196
196
 
197
197
  it { is_expected.to eq 2 }
198
198
  end
@@ -232,7 +232,7 @@ RSpec.describe Hyrax::CollectionPresenter do
232
232
 
233
233
  context "collection with public work and sub-collection" do
234
234
  let!(:work) { create(:public_work, member_of_collections: [collection]) }
235
- let!(:subcollection) { create(:public_collection, member_of_collections: [collection]) }
235
+ let!(:subcollection) { create(:public_collection_lw, member_of_collections: [collection]) }
236
236
 
237
237
  it { is_expected.to eq 1 }
238
238
  end
@@ -259,20 +259,20 @@ RSpec.describe Hyrax::CollectionPresenter do
259
259
  end
260
260
 
261
261
  context "collection with private collection" do
262
- let!(:subcollection) { create(:private_collection, member_of_collections: [collection]) }
262
+ let!(:subcollection) { build(:private_collection_lw, member_of_collections: [collection]) }
263
263
 
264
264
  it { is_expected.to eq 0 }
265
265
  end
266
266
 
267
267
  context "collection with public collection" do
268
- let!(:subcollection) { create(:public_collection, member_of_collections: [collection]) }
268
+ let!(:subcollection) { create(:public_collection_lw, member_of_collections: [collection]) }
269
269
 
270
270
  it { is_expected.to eq 1 }
271
271
  end
272
272
 
273
273
  context "collection with public work and sub-collection" do
274
274
  let!(:work) { create(:public_work, member_of_collections: [collection]) }
275
- let!(:subcollection) { create(:public_collection, member_of_collections: [collection]) }
275
+ let!(:subcollection) { create(:public_collection_lw, member_of_collections: [collection]) }
276
276
 
277
277
  it { is_expected.to eq 1 }
278
278
  end
@@ -310,8 +310,8 @@ RSpec.describe Hyrax::CollectionPresenter do
310
310
  end
311
311
 
312
312
  context('when parent_collections is has collections') do
313
- let(:collection1) { build(:collection, title: ['col1']) }
314
- let(:collection2) { build(:collection, title: ['col2']) }
313
+ let(:collection1) { build(:collection_lw, title: ['col1']) }
314
+ let(:collection2) { build(:collection_lw, title: ['col2']) }
315
315
  let!(:parent_docs) { [collection1, collection2] }
316
316
 
317
317
  before do
@@ -2,7 +2,7 @@ RSpec.describe Hyrax::CollectionMemberSearchBuilder do
2
2
  let(:context) { double("context", blacklight_config: CatalogController.blacklight_config) }
3
3
  let(:solr_params) { { fq: [] } }
4
4
  let(:include_models) { :both }
5
- let(:collection) { build(:collection, id: '12345') }
5
+ let(:collection) { build(:collection_lw, id: '12345') }
6
6
  let(:builder) { described_class.new(scope: context, collection: collection, search_includes_models: include_models) }
7
7
 
8
8
  describe ".default_processor_chain" do
@@ -50,7 +50,7 @@ RSpec.describe Hyrax::CollectionSearchBuilder do
50
50
 
51
51
  context 'when access is :deposit' do
52
52
  let(:access) { "deposit" }
53
- let!(:collection) { create(:collection, with_permission_template: attributes) }
53
+ let!(:collection) { create(:collection_lw, with_permission_template: attributes) }
54
54
 
55
55
  context 'and user has access' do
56
56
  let(:attributes) { { deposit_users: [user.user_key] } }