ddr-models 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/app/models/collection.rb +20 -11
  3. data/db/migrate/20150109192134_drop_workflow_state.rb~ +11 -0
  4. data/db/migrate/20150110023410_drop_workflow_states.rb +11 -0
  5. data/db/migrate/20150110023410_drop_workflow_states.rb~ +4 -0
  6. data/lib/ddr/auth/user.rb +1 -1
  7. data/lib/ddr/datastreams.rb +3 -2
  8. data/lib/ddr/datastreams/admin_metadata_datastream.rb +21 -0
  9. data/lib/ddr/datastreams/admin_metadata_datastream.rb~ +13 -0
  10. data/lib/ddr/managers.rb +3 -0
  11. data/lib/ddr/managers/manager.rb +14 -0
  12. data/lib/ddr/managers/manager.rb~ +14 -0
  13. data/lib/ddr/managers/role_manager.rb +31 -0
  14. data/lib/ddr/managers/role_manager.rb~ +21 -0
  15. data/lib/ddr/managers/workflow_manager.rb +33 -0
  16. data/lib/ddr/managers/workflow_manager.rb~ +33 -0
  17. data/lib/ddr/metadata.rb +0 -1
  18. data/lib/ddr/metadata/#permanent_id_record.rb# +13 -0
  19. data/lib/ddr/models.rb +1 -4
  20. data/lib/ddr/models/#has_ezid_identifier.rb# +26 -0
  21. data/lib/ddr/models/#has_permanent_identifier.rb# +9 -0
  22. data/lib/ddr/models/base.rb +1 -3
  23. data/lib/ddr/models/has_admin_metadata.rb +39 -0
  24. data/lib/ddr/models/{has_preservation_metadata.rb → has_admin_metadata.rb~} +11 -5
  25. data/lib/ddr/models/has_content.rb +1 -1
  26. data/lib/ddr/models/solr_document.rb +1 -1
  27. data/lib/ddr/models/version.rb +1 -1
  28. data/lib/ddr/vocab.rb +2 -1
  29. data/lib/ddr/vocab.rb~ +9 -0
  30. data/lib/ddr/vocab/asset.rb +11 -0
  31. data/lib/ddr/{metadata/roles_vocabulary.rb → vocab/roles.rb} +4 -2
  32. data/lib/ddr/vocab/workflow.rb~ +7 -0
  33. data/spec/dummy/db/development.sqlite3 +0 -0
  34. data/spec/dummy/db/schema.rb +1 -11
  35. data/spec/dummy/db/test.sqlite3 +0 -0
  36. data/spec/dummy/log/development.log +2096 -3163
  37. data/spec/dummy/log/test.log +77302 -77584
  38. data/spec/models/ability_spec.rb +2 -2
  39. data/spec/models/collection_spec.rb +8 -1
  40. data/spec/models/has_admin_metadata_spec.rb +197 -0
  41. data/spec/models/has_admin_metadata_spec.rb~ +144 -0
  42. data/spec/models/user_spec.rb +6 -0
  43. metadata +40 -17
  44. data/lib/ddr/models/has_role_assignments.rb +0 -17
  45. data/lib/ddr/models/has_workflow.rb +0 -29
  46. data/lib/ddr/vocab/preservation.rb +0 -14
  47. data/lib/ddr/workflow.rb +0 -8
  48. data/lib/ddr/workflow/workflow_state.rb +0 -39
  49. data/spec/models/has_preservation_metadata_spec.rb +0 -109
  50. data/spec/models/has_role_assignments_spec.rb +0 -29
  51. data/spec/models/has_workflow_spec.rb +0 -54
  52. data/spec/models/role_assignments_datastream_spec.rb +0 -25
@@ -57,7 +57,7 @@ module Ddr
57
57
 
58
58
  context "and user has the downloader role", roles: true do
59
59
  before do
60
- resource.roleAssignments.downloader << user.principal_name
60
+ resource.roles.downloader << user.principal_name
61
61
  resource.save
62
62
  end
63
63
  context "and user has edit permission" do
@@ -116,7 +116,7 @@ module Ddr
116
116
 
117
117
  context "and user has the downloader role", roles: true do
118
118
  before do
119
- obj.roleAssignments.downloader << user.principal_name
119
+ obj.roles.downloader << user.principal_name
120
120
  obj.save
121
121
  end
122
122
  context "and user has read permission on the object" do
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  RSpec.describe Collection, :type => :model do
4
4
 
5
5
  it_behaves_like "a DDR model"
6
-
6
+
7
7
  it_behaves_like "it has an association", :has_many, :children, :is_member_of_collection, "Item"
8
8
 
9
9
  it_behaves_like "it has an association", :has_many, :targets, :is_external_target_for, "Target"
@@ -30,4 +30,11 @@ RSpec.describe Collection, :type => :model do
30
30
  end
31
31
  end
32
32
 
33
+ context "creation" do
34
+ let(:collection) { Collection.create(title: [ "Test Collection" ]) }
35
+ it "should be governed by itself" do
36
+ expect(collection.admin_policy).to eq(collection)
37
+ end
38
+ end
39
+
33
40
  end
@@ -0,0 +1,197 @@
1
+ require 'spec_helper'
2
+
3
+ module Ddr
4
+ module Models
5
+ RSpec.describe HasAdminMetadata, type: :model do
6
+
7
+ describe "permanent id and permanent url" do
8
+
9
+ before(:all) do
10
+ class PermanentlyIdentifiable < ActiveFedora::Base
11
+ include Ddr::Models::Describable
12
+ include Ddr::Models::Indexing
13
+ include Ddr::Models::HasAdminMetadata
14
+ include Ddr::Models::EventLoggable
15
+ end
16
+ end
17
+
18
+ after(:all) do
19
+ Ddr::Models.send(:remove_const, :PermanentlyIdentifiable)
20
+ end
21
+
22
+ subject { PermanentlyIdentifiable.new }
23
+
24
+ describe "permanent_id" do
25
+ describe "when a permanent id has not been assigned" do
26
+ it "should be nil" do
27
+ expect(subject.permanent_id).to be_nil
28
+ end
29
+ end
30
+ end
31
+
32
+ describe "object lifecycle" do
33
+ context "when created" do
34
+ context "and auto-assignment is enabled" do
35
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { true } }
36
+ it "should assign a permanent id" do
37
+ expect_any_instance_of(PermanentlyIdentifiable).to receive(:assign_permanent_id!) { nil }
38
+ PermanentlyIdentifiable.create
39
+ end
40
+ end
41
+ context "and auto-assignment is disabled" do
42
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { false } }
43
+ it "should not assign a permanent id" do
44
+ expect_any_instance_of(PermanentlyIdentifiable).not_to receive(:assign_permanent_id!)
45
+ PermanentlyIdentifiable.create
46
+ end
47
+ end
48
+ end
49
+ context "when saved" do
50
+ context "and auto-assignment is enabled" do
51
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { true } }
52
+ it "should assign a permanent id once" do
53
+ expect(subject).to receive(:assign_permanent_id!).once { nil }
54
+ subject.save
55
+ subject.title = ["New Title"]
56
+ subject.save
57
+ end
58
+ end
59
+ context "and auto-assignment is disabled" do
60
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { false } }
61
+ it "should not assign a permanent id" do
62
+ expect(subject).not_to receive(:assign_permanent_id!)
63
+ subject.save
64
+ end
65
+ end
66
+ end
67
+ end
68
+
69
+ describe "#assign_permanent_id!" do
70
+ it "should assign the permanent id later" do
71
+ expect(subject.permanent_id_manager).to receive(:assign_later) { nil }
72
+ subject.assign_permanent_id!
73
+ end
74
+ end
75
+
76
+ describe "events" do
77
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { true } }
78
+ context "when the operation succeeds" do
79
+ let(:stub_identifier) { double(id: "ark:/99999/fk4zzz", metadata: "_target: http://example.com") }
80
+ before { allow_any_instance_of(Ddr::Managers::PermanentIdManager).to receive(:mint) { stub_identifier } }
81
+ it "should create a success event" do
82
+ expect { subject.save }.to change { subject.update_events.count }.by(1)
83
+ end
84
+ end
85
+ context "when there's an exception" do
86
+ before { allow(Ezid::Identifier).to receive(:create).and_raise(Ezid::Error) }
87
+ it "should create a failure event" do
88
+ begin
89
+ subject.save
90
+ rescue Ezid::Error
91
+ end
92
+ expect(subject.update_events.last).to be_failure
93
+ end
94
+ end
95
+ end
96
+
97
+ describe "indexing" do
98
+ let(:permanent_id) { "ark:/99999/fk4zzz" }
99
+ let(:permanent_url) { "http://id.library.duke.edu/ark:/99999/fk4zzz" }
100
+ before do
101
+ subject.permanent_id = permanent_id
102
+ subject.permanent_url = permanent_url
103
+ end
104
+ it "should index the permanent id value" do
105
+ expect(subject.to_solr[Ddr::IndexFields::PERMANENT_ID]).to eq(permanent_id)
106
+ end
107
+ it "should index the permanent url" do
108
+ expect(subject.to_solr[Ddr::IndexFields::PERMANENT_URL]).to eq(permanent_url)
109
+ end
110
+ end
111
+
112
+ end
113
+
114
+ describe "role assignments" do
115
+ before(:all) do
116
+ class RoleAssignable < ActiveFedora::Base
117
+ include HasAdminMetadata
118
+ end
119
+ end
120
+
121
+ after(:all) do
122
+ Ddr::Models.send(:remove_const, :RoleAssignable)
123
+ end
124
+
125
+ subject { RoleAssignable.new }
126
+
127
+ describe "#principal_has_role?" do
128
+ it "should respond when given a list of principals and a valid role" do
129
+ expect { subject.principal_has_role?(["bob", "admins"], :administrator) }.not_to raise_error
130
+ end
131
+ it "should respond when given a principal name and a valid role" do
132
+ expect { subject.principal_has_role?("bob", :administrator) }.not_to raise_error
133
+ end
134
+ it "should raise an error when given an invalid role" do
135
+ expect { subject.principal_has_role?("bob", :foo) }.to raise_error
136
+ end
137
+ end
138
+ end
139
+
140
+ describe "workflow" do
141
+ before(:all) do
142
+ class Workflowable < ActiveFedora::Base
143
+ include HasAdminMetadata
144
+ end
145
+ end
146
+
147
+ subject { Workflowable.new }
148
+
149
+ describe "#published?" do
150
+ context "object is published" do
151
+ before { allow(subject).to receive(:workflow_state) { Ddr::Managers::WorkflowManager::PUBLISHED } }
152
+ it "should return true" do
153
+ expect(subject).to be_published
154
+ end
155
+ end
156
+ context "object is not published" do
157
+ before { allow(subject).to receive(:workflow_state) { nil } }
158
+ it "should return false" do
159
+ expect(subject).not_to be_published
160
+ end
161
+ end
162
+ end
163
+
164
+ describe "#publish" do
165
+ it "should publish the object" do
166
+ subject.publish
167
+ expect(subject).to be_published
168
+ end
169
+ end
170
+
171
+ describe "#publish!" do
172
+ it "should publish and persist the object" do
173
+ subject.publish!
174
+ expect(subject.reload).to be_published
175
+ end
176
+ end
177
+
178
+ describe "#unpublish" do
179
+ before { subject.publish }
180
+ it "should unpublish the object" do
181
+ subject.unpublish
182
+ expect(subject).not_to be_published
183
+ end
184
+ end
185
+
186
+ describe "#unpublish!" do
187
+ before { subject.publish! }
188
+ it "should unpublish and persist the object" do
189
+ subject.unpublish!
190
+ expect(subject.reload).not_to be_published
191
+ end
192
+ end
193
+ end
194
+
195
+ end
196
+ end
197
+ end
@@ -0,0 +1,144 @@
1
+ require 'spec_helper'
2
+
3
+ module Ddr
4
+ module Models
5
+ RSpec.describe HasAdminMetadata, type: :model do
6
+
7
+ describe "permanent id and permanent url" do
8
+
9
+ before(:all) do
10
+ class PermanentlyIdentifiable < ActiveFedora::Base
11
+ include Ddr::Models::Describable
12
+ include Ddr::Models::Indexing
13
+ include Ddr::Models::HasWorkflow
14
+ include Ddr::Models::HasAdminMetadata
15
+ include Ddr::Models::EventLoggable
16
+ end
17
+ end
18
+
19
+ after(:all) do
20
+ Ddr::Models.send(:remove_const, :PermanentlyIdentifiable)
21
+ end
22
+
23
+ subject { PermanentlyIdentifiable.new }
24
+
25
+ describe "permanent_id" do
26
+ describe "when a permanent id has not been assigned" do
27
+ it "should be nil" do
28
+ expect(subject.permanent_id).to be_nil
29
+ end
30
+ end
31
+ end
32
+
33
+ describe "object lifecycle" do
34
+ context "when created" do
35
+ context "and auto-assignment is enabled" do
36
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { true } }
37
+ it "should assign a permanent id" do
38
+ expect_any_instance_of(PermanentlyIdentifiable).to receive(:assign_permanent_id!) { nil }
39
+ PermanentlyIdentifiable.create
40
+ end
41
+ end
42
+ context "and auto-assignment is disabled" do
43
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { false } }
44
+ it "should not assign a permanent id" do
45
+ expect_any_instance_of(PermanentlyIdentifiable).not_to receive(:assign_permanent_id!)
46
+ PermanentlyIdentifiable.create
47
+ end
48
+ end
49
+ end
50
+ context "when saved" do
51
+ context "and auto-assignment is enabled" do
52
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { true } }
53
+ it "should assign a permanent id once" do
54
+ expect(subject).to receive(:assign_permanent_id!).once { nil }
55
+ subject.save
56
+ subject.title = ["New Title"]
57
+ subject.save
58
+ end
59
+ end
60
+ context "and auto-assignment is disabled" do
61
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { false } }
62
+ it "should not assign a permanent id" do
63
+ expect(subject).not_to receive(:assign_permanent_id!)
64
+ subject.save
65
+ end
66
+ end
67
+ end
68
+ end
69
+
70
+ describe "#assign_permanent_id!" do
71
+ it "should assign the permanent id later" do
72
+ expect(subject.permanent_id_manager).to receive(:assign_later) { nil }
73
+ subject.assign_permanent_id!
74
+ end
75
+ end
76
+
77
+ describe "events" do
78
+ before { allow(Ddr::Models).to receive(:auto_assign_permanent_ids) { true } }
79
+ context "when the operation succeeds" do
80
+ let(:stub_identifier) { double(id: "ark:/99999/fk4zzz", metadata: "_target: http://example.com") }
81
+ before { allow_any_instance_of(Ddr::Managers::PermanentIdManager).to receive(:mint) { stub_identifier } }
82
+ it "should create a success event" do
83
+ expect { subject.save }.to change { subject.update_events.count }.by(1)
84
+ end
85
+ end
86
+ context "when there's an exception" do
87
+ before { allow(Ezid::Identifier).to receive(:create).and_raise(Ezid::Error) }
88
+ it "should create a failure event" do
89
+ begin
90
+ subject.save
91
+ rescue Ezid::Error
92
+ end
93
+ expect(subject.update_events.last).to be_failure
94
+ end
95
+ end
96
+ end
97
+
98
+ describe "indexing" do
99
+ let(:permanent_id) { "ark:/99999/fk4zzz" }
100
+ let(:permanent_url) { "http://id.library.duke.edu/ark:/99999/fk4zzz" }
101
+ before do
102
+ subject.permanent_id = permanent_id
103
+ subject.permanent_url = permanent_url
104
+ end
105
+ it "should index the permanent id value" do
106
+ expect(subject.to_solr[Ddr::IndexFields::PERMANENT_ID]).to eq(permanent_id)
107
+ end
108
+ it "should index the permanent url" do
109
+ expect(subject.to_solr[Ddr::IndexFields::PERMANENT_URL]).to eq(permanent_url)
110
+ end
111
+ end
112
+
113
+ end
114
+
115
+ describe "role assignments" do
116
+
117
+ before(:all) do
118
+ class RoleAssignable < ActiveFedora::Base
119
+ include HasRoleAssignments
120
+ end
121
+ end
122
+
123
+ after(:all) do
124
+ Ddr::Models.send(:remove_const, :RoleAssignable)
125
+ end
126
+
127
+ subject { RoleAssignable.new }
128
+
129
+ describe "#principal_has_role?" do
130
+ it "should respond when given a list of principals and a valid role" do
131
+ expect { subject.principal_has_role?(["bob", "admins"], :administrator) }.not_to raise_error
132
+ end
133
+ it "should respond when given a principal name and a valid role" do
134
+ expect { subject.principal_has_role?("bob", :administrator) }.not_to raise_error
135
+ end
136
+ it "should raise an error when given an invalid role" do
137
+ expect { subject.principal_has_role?("bob", :foo) }.to raise_error
138
+ end
139
+ end
140
+ end
141
+
142
+ end
143
+ end
144
+ end
@@ -55,6 +55,12 @@ module Ddr
55
55
  end
56
56
  end
57
57
 
58
+ describe "#group_service" do
59
+ it "should be RemoteGroupService by default" do
60
+ expect(subject.group_service).to be_a(RemoteGroupService)
61
+ end
62
+ end
63
+
58
64
  end
59
65
  end
60
66
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddr-models
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Coble
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-01-06 00:00:00.000000000 Z
12
+ date: 2015-01-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -151,6 +151,20 @@ dependencies:
151
151
  - - "~>"
152
152
  - !ruby/object:Gem::Version
153
153
  version: '1.25'
154
+ - !ruby/object:Gem::Dependency
155
+ name: rdf-vocab
156
+ requirement: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - "~>"
159
+ - !ruby/object:Gem::Version
160
+ version: '0.4'
161
+ type: :runtime
162
+ prerelease: false
163
+ version_requirements: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - "~>"
166
+ - !ruby/object:Gem::Version
167
+ version: '0.4'
154
168
  - !ruby/object:Gem::Dependency
155
169
  name: bundler
156
170
  requirement: !ruby/object:Gem::Requirement
@@ -276,6 +290,9 @@ files:
276
290
  - db/migrate/20141107124012_add_columns_to_user.rb
277
291
  - db/migrate/20141216040225_drop_minted_ids.rb
278
292
  - db/migrate/20141218020612_add_exception_to_events.rb
293
+ - db/migrate/20150109192134_drop_workflow_state.rb~
294
+ - db/migrate/20150110023410_drop_workflow_states.rb
295
+ - db/migrate/20150110023410_drop_workflow_states.rb~
279
296
  - lib/ddr-models.rb
280
297
  - lib/ddr/actions.rb
281
298
  - lib/ddr/actions/fixity_check.rb
@@ -287,6 +304,8 @@ files:
287
304
  - lib/ddr/auth/superuser.rb
288
305
  - lib/ddr/auth/user.rb
289
306
  - lib/ddr/datastreams.rb
307
+ - lib/ddr/datastreams/admin_metadata_datastream.rb
308
+ - lib/ddr/datastreams/admin_metadata_datastream.rb~
290
309
  - lib/ddr/datastreams/content_metadata_datastream.rb
291
310
  - lib/ddr/datastreams/datastream_behavior.rb
292
311
  - lib/ddr/datastreams/descriptive_metadata_datastream.rb
@@ -306,15 +325,23 @@ files:
306
325
  - lib/ddr/events/virus_check_event.rb
307
326
  - lib/ddr/index_fields.rb
308
327
  - lib/ddr/managers.rb
328
+ - lib/ddr/managers/manager.rb
329
+ - lib/ddr/managers/manager.rb~
309
330
  - lib/ddr/managers/permanent_id_manager.rb
331
+ - lib/ddr/managers/role_manager.rb
332
+ - lib/ddr/managers/role_manager.rb~
333
+ - lib/ddr/managers/workflow_manager.rb
334
+ - lib/ddr/managers/workflow_manager.rb~
310
335
  - lib/ddr/metadata.rb
336
+ - lib/ddr/metadata/#permanent_id_record.rb#
311
337
  - lib/ddr/metadata/duke_terms.rb
312
338
  - lib/ddr/metadata/premis_event.rb
313
339
  - lib/ddr/metadata/rdf_vocabulary_parser.rb
314
- - lib/ddr/metadata/roles_vocabulary.rb
315
340
  - lib/ddr/metadata/sources/duketerms.rdf.xml
316
341
  - lib/ddr/metadata/vocabulary.rb
317
342
  - lib/ddr/models.rb
343
+ - lib/ddr/models/#has_ezid_identifier.rb#
344
+ - lib/ddr/models/#has_permanent_identifier.rb#
318
345
  - lib/ddr/models/access_controllable.rb
319
346
  - lib/ddr/models/base.rb
320
347
  - lib/ddr/models/describable.rb
@@ -324,15 +351,14 @@ files:
324
351
  - lib/ddr/models/file_management.rb
325
352
  - lib/ddr/models/fixity_checkable.rb
326
353
  - lib/ddr/models/governable.rb
354
+ - lib/ddr/models/has_admin_metadata.rb
355
+ - lib/ddr/models/has_admin_metadata.rb~
327
356
  - lib/ddr/models/has_attachments.rb
328
357
  - lib/ddr/models/has_children.rb
329
358
  - lib/ddr/models/has_content.rb
330
359
  - lib/ddr/models/has_content_metadata.rb
331
- - lib/ddr/models/has_preservation_metadata.rb
332
360
  - lib/ddr/models/has_properties.rb
333
- - lib/ddr/models/has_role_assignments.rb
334
361
  - lib/ddr/models/has_thumbnail.rb
335
- - lib/ddr/models/has_workflow.rb
336
362
  - lib/ddr/models/indexing.rb
337
363
  - lib/ddr/models/licensable.rb
338
364
  - lib/ddr/models/solr_document.rb
@@ -340,9 +366,10 @@ files:
340
366
  - lib/ddr/notifications.rb
341
367
  - lib/ddr/utils.rb
342
368
  - lib/ddr/vocab.rb
343
- - lib/ddr/vocab/preservation.rb
344
- - lib/ddr/workflow.rb
345
- - lib/ddr/workflow/workflow_state.rb
369
+ - lib/ddr/vocab.rb~
370
+ - lib/ddr/vocab/asset.rb
371
+ - lib/ddr/vocab/roles.rb
372
+ - lib/ddr/vocab/workflow.rb~
346
373
  - spec/dummy/README.rdoc
347
374
  - spec/dummy/Rakefile
348
375
  - spec/dummy/app/assets/javascripts/application.js
@@ -408,11 +435,9 @@ files:
408
435
  - spec/models/descriptive_metadata_datastream_spec.rb
409
436
  - spec/models/events_spec.rb
410
437
  - spec/models/file_management_spec.rb
411
- - spec/models/has_preservation_metadata_spec.rb
412
- - spec/models/has_role_assignments_spec.rb
413
- - spec/models/has_workflow_spec.rb
438
+ - spec/models/has_admin_metadata_spec.rb
439
+ - spec/models/has_admin_metadata_spec.rb~
414
440
  - spec/models/item_spec.rb
415
- - spec/models/role_assignments_datastream_spec.rb
416
441
  - spec/models/superuser_spec.rb
417
442
  - spec/models/target_spec.rb
418
443
  - spec/models/user_spec.rb
@@ -520,11 +545,9 @@ test_files:
520
545
  - spec/models/descriptive_metadata_datastream_spec.rb
521
546
  - spec/models/events_spec.rb
522
547
  - spec/models/file_management_spec.rb
523
- - spec/models/has_preservation_metadata_spec.rb
524
- - spec/models/has_role_assignments_spec.rb
525
- - spec/models/has_workflow_spec.rb
548
+ - spec/models/has_admin_metadata_spec.rb
549
+ - spec/models/has_admin_metadata_spec.rb~
526
550
  - spec/models/item_spec.rb
527
- - spec/models/role_assignments_datastream_spec.rb
528
551
  - spec/models/superuser_spec.rb
529
552
  - spec/models/target_spec.rb
530
553
  - spec/models/user_spec.rb