curation_concerns 2.0.0.rc1 → 2.0.0.rc2

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 (65) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +0 -12
  3. data/.travis.yml +6 -1
  4. data/CONTRIBUTING.md +68 -20
  5. data/app/actors/curation_concerns/actors/add_as_member_of_collections_actor.rb +3 -0
  6. data/app/actors/curation_concerns/actors/add_to_work_actor.rb +16 -4
  7. data/app/actors/curation_concerns/actors/apply_order_actor.rb +16 -5
  8. data/app/actors/curation_concerns/optimistic_lock_validator.rb +28 -0
  9. data/app/assets/javascripts/curation_concerns/file_manager/sorting.es6 +17 -7
  10. data/app/controllers/concerns/curation_concerns/curation_concern_controller.rb +11 -1
  11. data/app/controllers/concerns/curation_concerns/download_behavior.rb +6 -0
  12. data/app/forms/curation_concerns/forms/file_manager_form.rb +27 -0
  13. data/app/forms/curation_concerns/forms/work_form.rb +8 -0
  14. data/app/indexers/curation_concerns/file_set_indexer.rb +2 -2
  15. data/app/jobs/characterize_job.rb +12 -5
  16. data/app/jobs/create_derivatives_job.rb +10 -5
  17. data/app/jobs/ingest_file_job.rb +13 -9
  18. data/app/models/concerns/curation_concerns/ability.rb +1 -0
  19. data/app/models/concerns/curation_concerns/collection_behavior.rb +1 -1
  20. data/app/models/concerns/curation_concerns/work_behavior.rb +6 -0
  21. data/app/presenters/curation_concerns/admin/workflow_role_presenter.rb +4 -0
  22. data/app/presenters/curation_concerns/member_presenter_factory.rb +70 -0
  23. data/app/presenters/curation_concerns/work_show_presenter.rb +7 -47
  24. data/app/services/curation_concerns/actors/actor_factory.rb +2 -1
  25. data/app/services/curation_concerns/workflow/grant_edit_to_depositor.rb +1 -1
  26. data/app/services/curation_concerns/workflow/permission_query.rb +4 -1
  27. data/app/services/curation_concerns/workflow/workflow_importer.rb +1 -0
  28. data/app/services/curation_concerns/workflow/workflow_schema.rb +1 -0
  29. data/app/views/curation_concerns/admin/workflow_roles/index.html.erb +1 -2
  30. data/app/views/curation_concerns/base/_file_manager_member_resource_options.html.erb +2 -2
  31. data/app/views/curation_concerns/base/_file_manager_members.html.erb +13 -5
  32. data/app/views/curation_concerns/base/_file_manager_resource_form.html.erb +1 -1
  33. data/app/views/curation_concerns/base/_form.html.erb +5 -0
  34. data/app/views/curation_concerns/base/_form_in_works_error.html.erb +3 -0
  35. data/app/views/curation_concerns/base/_form_ordered_members_error.html.erb +3 -0
  36. data/app/views/curation_concerns/base/file_manager.html.erb +2 -2
  37. data/app/views/curation_concerns/base/show.json.jbuilder +2 -1
  38. data/config/locales/curation_concerns.en.yml +4 -0
  39. data/curation_concerns.gemspec +1 -1
  40. data/db/migrate/20170308175556_add_allows_access_grant_to_workflow.rb +5 -0
  41. data/lib/curation_concerns/data_migration/collections_migration.rb +16 -0
  42. data/lib/curation_concerns/version.rb +1 -1
  43. data/lib/generators/curation_concerns/templates/workflow.json.erb +1 -0
  44. data/lib/tasks/curation_concerns.rake +12 -0
  45. data/spec/actors/curation_concerns/add_as_member_of_collections_actor_spec.rb +58 -0
  46. data/spec/actors/curation_concerns/apply_order_actor_spec.rb +20 -0
  47. data/spec/actors/curation_concerns/optimistic_lock_validator_spec.rb +50 -0
  48. data/spec/actors/curation_concerns/work_actor_spec.rb +9 -6
  49. data/spec/controllers/curation_concerns/generic_works_controller_spec.rb +2 -1
  50. data/spec/controllers/downloads_controller_spec.rb +5 -6
  51. data/spec/features/create_child_work_spec.rb +16 -2
  52. data/spec/forms/curation_concerns/forms/file_manager_form_spec.rb +19 -0
  53. data/spec/forms/work_form_spec.rb +8 -0
  54. data/spec/lib/curation_concerns/data_migration/collections_migration_spec.rb +34 -0
  55. data/spec/presenters/curation_concerns/member_presenter_factory_spec.rb +25 -0
  56. data/spec/presenters/curation_concerns/work_show_presenter_spec.rb +11 -21
  57. data/spec/services/curation_concerns/workflow/grant_edit_to_depositor_spec.rb +15 -4
  58. data/spec/services/curation_concerns/workflow/permission_query_spec.rb +7 -1
  59. data/spec/services/curation_concerns/workflow/workflow_importer_spec.rb +5 -2
  60. data/spec/services/curation_concerns/workflow/workflow_schema_spec.rb +1 -0
  61. data/spec/views/curation_concerns/admin/workflow_roles/index.html.erb_spec.rb +33 -0
  62. data/spec/views/curation_concerns/base/_form.html.erb_spec.rb +35 -0
  63. data/spec/views/curation_concerns/base/file_manager.html.erb_spec.rb +10 -8
  64. data/spec/views/curation_concerns/base/show.json.jbuilder_spec.rb +3 -1
  65. metadata +26 -5
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe CurationConcerns::MemberPresenterFactory do
4
+ describe "#file_set_presenters" do
5
+ describe "getting presenters from factory" do
6
+ let(:solr_document) { SolrDocument.new(attributes) }
7
+ let(:attributes) { {} }
8
+ let(:ability) { double }
9
+ let(:request) { double }
10
+ let(:factory) { described_class.new(solr_document, ability, request) }
11
+ let(:presenter_class) { double }
12
+ before do
13
+ allow(factory).to receive(:composite_presenter_class).and_return(presenter_class)
14
+ allow(factory).to receive(:ordered_ids).and_return(['12', '33'])
15
+ allow(factory).to receive(:file_set_ids).and_return(['33', '12'])
16
+ end
17
+
18
+ it "uses the set class" do
19
+ expect(CurationConcerns::PresenterFactory).to receive(:build_presenters)
20
+ .with(['12', '33'], presenter_class, ability, request)
21
+ factory.file_set_presenters
22
+ end
23
+ end
24
+ end
25
+ end
@@ -81,31 +81,25 @@ describe CurationConcerns::WorkShowPresenter do
81
81
  expect(presenter.file_set_presenters.map(&:id)).to eq obj.ordered_member_ids
82
82
  end
83
83
 
84
- context "when some of the members are not file sets" do
85
- let(:another_work) { create(:work) }
84
+ context "solr query" do
86
85
  before do
87
- obj.ordered_members << another_work
88
- obj.save!
86
+ expect(ActiveFedora::SolrService).to receive(:query).twice.with(anything, hash_including(rows: 10_000)).and_return([])
89
87
  end
90
88
 
91
- it "filters out members that are not file sets" do
92
- expect(presenter.file_set_presenters.map(&:id)).not_to include another_work.id
89
+ it "requests >10 rows" do
90
+ presenter.file_set_presenters
93
91
  end
94
92
  end
95
93
 
96
- describe "getting presenters from factory" do
97
- let(:attributes) { {} }
98
- let(:presenter_class) { double }
94
+ context "when some of the members are not file sets" do
95
+ let(:another_work) { create(:work) }
99
96
  before do
100
- allow(presenter).to receive(:composite_presenter_class).and_return(presenter_class)
101
- allow(presenter).to receive(:ordered_ids).and_return(['12', '33'])
102
- allow(presenter).to receive(:file_set_ids).and_return(['33', '12'])
97
+ obj.ordered_members << another_work
98
+ obj.save!
103
99
  end
104
100
 
105
- it "uses the set class" do
106
- expect(CurationConcerns::PresenterFactory).to receive(:build_presenters)
107
- .with(['12', '33'], presenter_class, ability, request)
108
- presenter.file_set_presenters
101
+ it "filters out members that are not file sets" do
102
+ expect(presenter.file_set_presenters.map(&:id)).not_to include another_work.id
109
103
  end
110
104
  end
111
105
  end
@@ -113,13 +107,9 @@ describe CurationConcerns::WorkShowPresenter do
113
107
  describe "#representative_presenter" do
114
108
  let(:obj) { create(:work_with_representative_file) }
115
109
  let(:attributes) { obj.to_solr }
116
- let(:presenter_class) { double }
117
- before do
118
- allow(presenter).to receive(:composite_presenter_class).and_return(presenter_class)
119
- end
120
110
  it "has a representative" do
121
111
  expect(CurationConcerns::PresenterFactory).to receive(:build_presenters)
122
- .with([obj.members[0].id], presenter_class, ability, request).and_return ["abc"]
112
+ .with([obj.members[0].id], CurationConcerns::CompositePresenterFactory, ability, request).and_return ["abc"]
123
113
  expect(presenter.representative_presenter).to eq("abc")
124
114
  end
125
115
  end
@@ -2,7 +2,6 @@ require 'spec_helper'
2
2
 
3
3
  RSpec.describe CurationConcerns::Workflow::GrantEditToDepositor do
4
4
  let(:depositor) { create(:user) }
5
- let(:work) { create(:work_without_access, depositor: depositor.user_key) }
6
5
  let(:user) { User.new }
7
6
 
8
7
  describe ".call" do
@@ -12,9 +11,21 @@ RSpec.describe CurationConcerns::Workflow::GrantEditToDepositor do
12
11
  user: user)
13
12
  end
14
13
 
15
- it "adds edit access " do
16
- expect { subject }.to change { work.edit_users }.from([]).to([depositor.user_key])
17
- expect(work).to be_valid
14
+ context "with no additional editors" do
15
+ let(:work) { create(:work_without_access, depositor: depositor.user_key) }
16
+ it "adds edit access" do
17
+ expect { subject }.to change { work.edit_users }.from([]).to([depositor.user_key])
18
+ expect(work).to be_valid
19
+ end
20
+ end
21
+
22
+ context "with an additional editor" do
23
+ let(:editor) { create(:user) }
24
+ let(:work) { create(:work_without_access, depositor: depositor.user_key, edit_users: [editor.user_key]) }
25
+ it "adds edit access" do
26
+ expect { subject }.to change { work.edit_users }.from([editor.user_key]).to([editor.user_key, depositor.user_key])
27
+ expect(work).to be_valid
28
+ end
18
29
  end
19
30
  end
20
31
  end
@@ -165,12 +165,18 @@ module CurationConcerns
165
165
  subject { described_class.scope_processing_agents_for(user: nil) }
166
166
  it { is_expected.to eq([]) }
167
167
  end
168
+
168
169
  context 'when user is persisted' do
169
170
  let(:user) { create(:user) }
171
+ before do
172
+ allow(user).to receive(:groups).and_return(['librarians'])
173
+ end
174
+
170
175
  subject { described_class.scope_processing_agents_for(user: user) }
176
+
171
177
  it 'will equal [kind_of(Sipity::Agent)]' do
172
178
  is_expected.to contain_exactly(PowerConverter.convert_to_sipity_agent(user),
173
- PowerConverter.convert_to_sipity_agent(Group.new('registered')))
179
+ PowerConverter.convert_to_sipity_agent(Group.new('librarians')))
174
180
  end
175
181
  end
176
182
  end
@@ -10,6 +10,7 @@ RSpec.describe CurationConcerns::Workflow::WorkflowImporter do
10
10
  "name": "ulra_submission",
11
11
  "label": "This is the label",
12
12
  "description": "This description could get really long",
13
+ "allows_access_grant": true,
13
14
  "actions": [{
14
15
  "name": "approve",
15
16
  "transition_to": "reviewed",
@@ -42,8 +43,10 @@ RSpec.describe CurationConcerns::Workflow::WorkflowImporter do
42
43
  result = described_class.generate_from_json_file(path: path)
43
44
  end.to change { Sipity::Workflow.count }.by(1)
44
45
  expect(result).to match_array(kind_of(Sipity::Workflow))
45
- expect(result.first.label).to eq "This is the label"
46
- expect(result.first.description).to eq "This description could get really long"
46
+ first_workflow = result.first
47
+ expect(first_workflow.label).to eq "This is the label"
48
+ expect(first_workflow.description).to eq "This description could get really long"
49
+ expect(first_workflow.allows_access_grant?).to be true
47
50
  end
48
51
  end
49
52
  end
@@ -8,6 +8,7 @@ module CurationConcerns
8
8
  workflows: [
9
9
  {
10
10
  name: "valid",
11
+ allows_access_grant: true,
11
12
  actions: [
12
13
  {
13
14
  name: "finalize_digitization",
@@ -0,0 +1,33 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'curation_concerns/admin/workflow_roles/index.html.erb', type: :view do
4
+ let!(:user1) { create(:user) }
5
+ let!(:user2) { create(:user) }
6
+ let(:presenter) do
7
+ CurationConcerns::Admin::WorkflowRolePresenter.new
8
+ end
9
+
10
+ before do
11
+ assign(:presenter, presenter)
12
+ allow(view).to receive(:admin_workflow_roles_path).and_return('/admin/workflow_roles')
13
+ end
14
+
15
+ context 'with no users having workflow roles' do
16
+ it 'displays "No Roles" for each user' do
17
+ render
18
+ expect(rendered).to have_content('No roles', count: User.count)
19
+ end
20
+ end
21
+
22
+ context 'with some users having workflow roles' do
23
+ before do
24
+ # Force user instances to have corresponding sipity agents
25
+ user1.to_sipity_agent
26
+ user2.to_sipity_agent
27
+ end
28
+ it 'displays roles for each user' do
29
+ render
30
+ expect(rendered.match(/<ul>\s+<\/ul>/m)).to be nil
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,35 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'curation_concerns/base/_form.html.erb', type: :view do
4
+ let(:ability) { double }
5
+ let(:user) { stub_model(User) }
6
+ let(:form) do
7
+ CurationConcerns::GenericWorkForm.new(work, ability)
8
+ end
9
+
10
+ before do
11
+ # view.lookup_context.view_paths.push 'app/views/curation_concerns'
12
+ # allow(controller).to receive(:current_user).and_return(user)
13
+ allow(view).to receive(:curation_concern).and_return(work)
14
+ end
15
+
16
+ let(:page) do
17
+ view.simple_form_for form do |f|
18
+ render 'curation_concerns/base/form', f: f
19
+ end
20
+ Capybara::Node::Simple.new(rendered)
21
+ end
22
+
23
+ context "when the work has been saved before" do
24
+ before do
25
+ allow(work).to receive(:new_record?).and_return(false)
26
+ assign(:form, form)
27
+ end
28
+
29
+ let(:work) { stub_model(GenericWork, id: '456', etag: '123456') }
30
+
31
+ it "renders the form with the version" do
32
+ expect(page).to have_selector("input#generic_work_version[value=\"123456\"]", visible: false)
33
+ end
34
+ end
35
+ end
@@ -26,19 +26,21 @@ RSpec.describe "curation_concerns/base/file_manager.html.erb" do
26
26
  end
27
27
  let(:resource) { FactoryGirl.build(:file_set) }
28
28
 
29
- let(:parent) { FactoryGirl.build(:generic_work) }
30
- let(:parent_solr_doc) do
31
- SolrDocument.new(parent.to_solr.merge(id: "resource"), nil)
32
- end
33
- let(:parent_presenter) do
34
- CurationConcerns::WorkShowPresenter.new(parent_solr_doc, nil, view)
29
+ let(:parent) { build(:generic_work) }
30
+
31
+ let(:form) do
32
+ CurationConcerns::Forms::FileManagerForm.new(parent, nil)
35
33
  end
36
34
 
37
35
  let(:blacklight_config) { CatalogController.new.blacklight_config }
38
36
 
39
37
  before do
40
- allow(parent_presenter).to receive(:member_presenters).and_return([file_set, member])
41
- assign(:presenter, parent_presenter)
38
+ allow(parent).to receive(:etag).and_return("123456")
39
+ allow(parent).to receive(:persisted?).and_return(true)
40
+ allow(parent).to receive(:id).and_return('resource')
41
+
42
+ allow(form).to receive(:member_presenters).and_return([file_set, member])
43
+ assign(:form, form)
42
44
  # Blacklight nonsense
43
45
  allow(view).to receive(:dom_class) { '' }
44
46
  allow(view).to receive(:blacklight_config).and_return(blacklight_config)
@@ -1,9 +1,10 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'curation_concerns/base/show.json.jbuilder' do
4
- let(:curation_concern) { FactoryGirl.create(:generic_work) }
4
+ let(:curation_concern) { create(:generic_work) }
5
5
 
6
6
  before do
7
+ allow(curation_concern).to receive(:etag).and_return('W/"87f79d2244ded4239ad1f0e822c8429b1e72b66c"')
7
8
  assign(:curation_concern, curation_concern)
8
9
  render
9
10
  end
@@ -17,5 +18,6 @@ describe 'curation_concerns/base/show.json.jbuilder' do
17
18
  expected_fields.each do |field_symbol|
18
19
  expect(json).to have_key(field_symbol.to_s)
19
20
  end
21
+ expect(json['version']).to eq 'W/"87f79d2244ded4239ad1f0e822c8429b1e72b66c"'
20
22
  end
21
23
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: curation_concerns
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.rc1
4
+ version: 2.0.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Zumwalt
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-12-22 00:00:00.000000000 Z
13
+ date: 2017-04-10 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: hydra-head
@@ -38,14 +38,14 @@ dependencies:
38
38
  requirements:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: 10.3.0.rc1
41
+ version: 10.3.0
42
42
  type: :runtime
43
43
  prerelease: false
44
44
  version_requirements: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: 10.3.0.rc1
48
+ version: 10.3.0
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: blacklight
51
51
  requirement: !ruby/object:Gem::Requirement
@@ -785,6 +785,7 @@ files:
785
785
  - app/actors/curation_concerns/actors/interpret_visibility_actor.rb
786
786
  - app/actors/curation_concerns/actors/lease_actor.rb
787
787
  - app/actors/curation_concerns/actors/root_actor.rb
788
+ - app/actors/curation_concerns/optimistic_lock_validator.rb
788
789
  - app/assets/images/audio.png
789
790
  - app/assets/images/default.png
790
791
  - app/assets/images/loading.gif
@@ -877,6 +878,7 @@ files:
877
878
  - app/conversions/power_converters/sipity_workflow_state.rb
878
879
  - app/forms/curation_concerns/forms.rb
879
880
  - app/forms/curation_concerns/forms/collection_edit_form.rb
881
+ - app/forms/curation_concerns/forms/file_manager_form.rb
880
882
  - app/forms/curation_concerns/forms/file_set_edit_form.rb
881
883
  - app/forms/curation_concerns/forms/work_form.rb
882
884
  - app/forms/curation_concerns/forms/workflow_action_form.rb
@@ -972,6 +974,7 @@ files:
972
974
  - app/presenters/curation_concerns/file_set_presenter.rb
973
975
  - app/presenters/curation_concerns/inspect_work_presenter.rb
974
976
  - app/presenters/curation_concerns/lease_presenter.rb
977
+ - app/presenters/curation_concerns/member_presenter_factory.rb
975
978
  - app/presenters/curation_concerns/model_proxy.rb
976
979
  - app/presenters/curation_concerns/permission_badge.rb
977
980
  - app/presenters/curation_concerns/presenter_factory.rb
@@ -1143,8 +1146,10 @@ files:
1143
1146
  - app/views/curation_concerns/base/_form_descriptive_fields.html.erb
1144
1147
  - app/views/curation_concerns/base/_form_files_and_links.html.erb
1145
1148
  - app/views/curation_concerns/base/_form_in_works.html.erb
1149
+ - app/views/curation_concerns/base/_form_in_works_error.html.erb
1146
1150
  - app/views/curation_concerns/base/_form_media.html.erb
1147
1151
  - app/views/curation_concerns/base/_form_member_of_collections.html.erb
1152
+ - app/views/curation_concerns/base/_form_ordered_members_error.html.erb
1148
1153
  - app/views/curation_concerns/base/_form_permission.html.erb
1149
1154
  - app/views/curation_concerns/base/_form_permission_embargo.html.erb
1150
1155
  - app/views/curation_concerns/base/_form_permission_lease.html.erb
@@ -1243,6 +1248,7 @@ files:
1243
1248
  - db/migrate/20160427155928_create_operations.rb
1244
1249
  - db/migrate/20160919151348_create_sipity.rb
1245
1250
  - db/migrate/20161012182404_create_sipity_workflow_methods.rb
1251
+ - db/migrate/20170308175556_add_allows_access_grant_to_workflow.rb
1246
1252
  - lib/curation_concerns.rb
1247
1253
  - lib/curation_concerns/callbacks.rb
1248
1254
  - lib/curation_concerns/callbacks/registry.rb
@@ -1251,6 +1257,7 @@ files:
1251
1257
  - lib/curation_concerns/collections/search_service.rb
1252
1258
  - lib/curation_concerns/configuration.rb
1253
1259
  - lib/curation_concerns/controller_resource.rb
1260
+ - lib/curation_concerns/data_migration/collections_migration.rb
1254
1261
  - lib/curation_concerns/engine.rb
1255
1262
  - lib/curation_concerns/name.rb
1256
1263
  - lib/curation_concerns/null_logger.rb
@@ -1324,6 +1331,7 @@ files:
1324
1331
  - spec/abilities/file_set_abilities_spec.rb
1325
1332
  - spec/abilities/generic_work_abilities_spec.rb
1326
1333
  - spec/abilities/operation_ability_spec.rb
1334
+ - spec/actors/curation_concerns/add_as_member_of_collections_actor_spec.rb
1327
1335
  - spec/actors/curation_concerns/apply_order_actor_spec.rb
1328
1336
  - spec/actors/curation_concerns/embargo_actor_spec.rb
1329
1337
  - spec/actors/curation_concerns/file_actor_spec.rb
@@ -1331,6 +1339,7 @@ files:
1331
1339
  - spec/actors/curation_concerns/initialize_workflow_actor_spec.rb
1332
1340
  - spec/actors/curation_concerns/interpret_visibility_actor_spec.rb
1333
1341
  - spec/actors/curation_concerns/lease_actor_spec.rb
1342
+ - spec/actors/curation_concerns/optimistic_lock_validator_spec.rb
1334
1343
  - spec/actors/curation_concerns/work_actor_spec.rb
1335
1344
  - spec/controllers/accepts_batches_controller_spec.rb
1336
1345
  - spec/controllers/catalog_controller_spec.rb
@@ -1385,6 +1394,7 @@ files:
1385
1394
  - spec/features/work_generator_spec.rb
1386
1395
  - spec/features/workflow_roles_spec.rb
1387
1396
  - spec/forms/collection_edit_form_spec.rb
1397
+ - spec/forms/curation_concerns/forms/file_manager_form_spec.rb
1388
1398
  - spec/forms/curation_concerns/forms/workflow_action_form_spec.rb
1389
1399
  - spec/forms/curation_concerns/forms/workflow_responsibility_form_spec.rb
1390
1400
  - spec/forms/file_set_edit_form_spec.rb
@@ -1430,6 +1440,7 @@ files:
1430
1440
  - spec/lib/curation_concerns/callbacks/registry_spec.rb
1431
1441
  - spec/lib/curation_concerns/callbacks_spec.rb
1432
1442
  - spec/lib/curation_concerns/collections/search_service_spec.rb
1443
+ - spec/lib/curation_concerns/data_migration/collections_migration_spec.rb
1433
1444
  - spec/lib/curation_concerns/name_spec.rb
1434
1445
  - spec/lib/curation_concerns/null_logger_spec.rb
1435
1446
  - spec/lib/curation_concerns/readable_permissions_spec.rb
@@ -1470,6 +1481,7 @@ files:
1470
1481
  - spec/presenters/curation_concerns/collection_presenter_spec.rb
1471
1482
  - spec/presenters/curation_concerns/file_set_presenter_spec.rb
1472
1483
  - spec/presenters/curation_concerns/inspect_work_presenter_spec.rb
1484
+ - spec/presenters/curation_concerns/member_presenter_factory_spec.rb
1473
1485
  - spec/presenters/curation_concerns/permission_badge_spec.rb
1474
1486
  - spec/presenters/curation_concerns/presenter_factory_spec.rb
1475
1487
  - spec/presenters/curation_concerns/single_use_link_presenter_spec.rb
@@ -1556,7 +1568,9 @@ files:
1556
1568
  - spec/views/curation_concerns/admin/_total_objects_charts.html.erb_spec.rb
1557
1569
  - spec/views/curation_concerns/admin/index.html.erb_spec.rb
1558
1570
  - spec/views/curation_concerns/admin/widgets/_pie.html.erb_spec.rb
1571
+ - spec/views/curation_concerns/admin/workflow_roles/index.html.erb_spec.rb
1559
1572
  - spec/views/curation_concerns/base/_attributes.html.erb_spec.rb
1573
+ - spec/views/curation_concerns/base/_form.html.erb_spec.rb
1560
1574
  - spec/views/curation_concerns/base/_form_rights_spec.rb
1561
1575
  - spec/views/curation_concerns/base/_member.html.erb_spec.rb
1562
1576
  - spec/views/curation_concerns/base/_show_actions.html.erb_spec.rb
@@ -1604,7 +1618,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1604
1618
  version: 1.3.1
1605
1619
  requirements: []
1606
1620
  rubyforge_project:
1607
- rubygems_version: 2.5.1
1621
+ rubygems_version: 2.4.5.1
1608
1622
  signing_key:
1609
1623
  specification_version: 4
1610
1624
  summary: A Rails Engine that allows an application to CRUD CurationConcern objects
@@ -1617,6 +1631,7 @@ test_files:
1617
1631
  - spec/abilities/file_set_abilities_spec.rb
1618
1632
  - spec/abilities/generic_work_abilities_spec.rb
1619
1633
  - spec/abilities/operation_ability_spec.rb
1634
+ - spec/actors/curation_concerns/add_as_member_of_collections_actor_spec.rb
1620
1635
  - spec/actors/curation_concerns/apply_order_actor_spec.rb
1621
1636
  - spec/actors/curation_concerns/embargo_actor_spec.rb
1622
1637
  - spec/actors/curation_concerns/file_actor_spec.rb
@@ -1624,6 +1639,7 @@ test_files:
1624
1639
  - spec/actors/curation_concerns/initialize_workflow_actor_spec.rb
1625
1640
  - spec/actors/curation_concerns/interpret_visibility_actor_spec.rb
1626
1641
  - spec/actors/curation_concerns/lease_actor_spec.rb
1642
+ - spec/actors/curation_concerns/optimistic_lock_validator_spec.rb
1627
1643
  - spec/actors/curation_concerns/work_actor_spec.rb
1628
1644
  - spec/controllers/accepts_batches_controller_spec.rb
1629
1645
  - spec/controllers/catalog_controller_spec.rb
@@ -1678,6 +1694,7 @@ test_files:
1678
1694
  - spec/features/work_generator_spec.rb
1679
1695
  - spec/features/workflow_roles_spec.rb
1680
1696
  - spec/forms/collection_edit_form_spec.rb
1697
+ - spec/forms/curation_concerns/forms/file_manager_form_spec.rb
1681
1698
  - spec/forms/curation_concerns/forms/workflow_action_form_spec.rb
1682
1699
  - spec/forms/curation_concerns/forms/workflow_responsibility_form_spec.rb
1683
1700
  - spec/forms/file_set_edit_form_spec.rb
@@ -1723,6 +1740,7 @@ test_files:
1723
1740
  - spec/lib/curation_concerns/callbacks/registry_spec.rb
1724
1741
  - spec/lib/curation_concerns/callbacks_spec.rb
1725
1742
  - spec/lib/curation_concerns/collections/search_service_spec.rb
1743
+ - spec/lib/curation_concerns/data_migration/collections_migration_spec.rb
1726
1744
  - spec/lib/curation_concerns/name_spec.rb
1727
1745
  - spec/lib/curation_concerns/null_logger_spec.rb
1728
1746
  - spec/lib/curation_concerns/readable_permissions_spec.rb
@@ -1763,6 +1781,7 @@ test_files:
1763
1781
  - spec/presenters/curation_concerns/collection_presenter_spec.rb
1764
1782
  - spec/presenters/curation_concerns/file_set_presenter_spec.rb
1765
1783
  - spec/presenters/curation_concerns/inspect_work_presenter_spec.rb
1784
+ - spec/presenters/curation_concerns/member_presenter_factory_spec.rb
1766
1785
  - spec/presenters/curation_concerns/permission_badge_spec.rb
1767
1786
  - spec/presenters/curation_concerns/presenter_factory_spec.rb
1768
1787
  - spec/presenters/curation_concerns/single_use_link_presenter_spec.rb
@@ -1849,7 +1868,9 @@ test_files:
1849
1868
  - spec/views/curation_concerns/admin/_total_objects_charts.html.erb_spec.rb
1850
1869
  - spec/views/curation_concerns/admin/index.html.erb_spec.rb
1851
1870
  - spec/views/curation_concerns/admin/widgets/_pie.html.erb_spec.rb
1871
+ - spec/views/curation_concerns/admin/workflow_roles/index.html.erb_spec.rb
1852
1872
  - spec/views/curation_concerns/base/_attributes.html.erb_spec.rb
1873
+ - spec/views/curation_concerns/base/_form.html.erb_spec.rb
1853
1874
  - spec/views/curation_concerns/base/_form_rights_spec.rb
1854
1875
  - spec/views/curation_concerns/base/_member.html.erb_spec.rb
1855
1876
  - spec/views/curation_concerns/base/_show_actions.html.erb_spec.rb