active-fedora 9.10.4 → 9.11.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 (48) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +3 -0
  3. data/History.txt +0 -13
  4. data/lib/active_fedora.rb +7 -0
  5. data/lib/active_fedora/aggregation.rb +11 -0
  6. data/lib/active_fedora/aggregation/base_extension.rb +17 -0
  7. data/lib/active_fedora/aggregation/list_source.rb +103 -0
  8. data/lib/active_fedora/aggregation/ordered_reader.rb +27 -0
  9. data/lib/active_fedora/aggregation/proxy.rb +18 -0
  10. data/lib/active_fedora/associations.rb +40 -0
  11. data/lib/active_fedora/associations/builder/aggregation.rb +51 -0
  12. data/lib/active_fedora/associations/builder/filter.rb +18 -0
  13. data/lib/active_fedora/associations/builder/orders.rb +63 -0
  14. data/lib/active_fedora/associations/filter_association.rb +71 -0
  15. data/lib/active_fedora/associations/orders_association.rb +149 -0
  16. data/lib/active_fedora/attached_files.rb +2 -1
  17. data/lib/active_fedora/attribute_methods.rb +4 -4
  18. data/lib/active_fedora/autosave_association.rb +14 -0
  19. data/lib/active_fedora/base.rb +1 -0
  20. data/lib/active_fedora/cleaner.rb +1 -1
  21. data/lib/active_fedora/errors.rb +3 -0
  22. data/lib/active_fedora/fedora.rb +17 -7
  23. data/lib/active_fedora/file/streaming.rb +13 -4
  24. data/lib/active_fedora/orders.rb +12 -0
  25. data/lib/active_fedora/orders/collection_proxy.rb +8 -0
  26. data/lib/active_fedora/orders/list_node.rb +161 -0
  27. data/lib/active_fedora/orders/ordered_list.rb +264 -0
  28. data/lib/active_fedora/orders/target_proxy.rb +60 -0
  29. data/lib/active_fedora/reflection.rb +215 -42
  30. data/lib/active_fedora/validations.rb +1 -1
  31. data/lib/active_fedora/version.rb +1 -1
  32. data/lib/generators/active_fedora/config/solr/templates/solr/config/schema.xml +1 -1
  33. data/solr/config/schema.xml +1 -1
  34. data/spec/integration/attributes_spec.rb +8 -0
  35. data/spec/integration/file_spec.rb +22 -0
  36. data/spec/integration/has_many_associations_spec.rb +23 -0
  37. data/spec/integration/versionable_spec.rb +6 -6
  38. data/spec/unit/active_fedora_spec.rb +1 -1
  39. data/spec/unit/aggregation/list_source_spec.rb +134 -0
  40. data/spec/unit/aggregation/ordered_reader_spec.rb +43 -0
  41. data/spec/unit/fedora_spec.rb +1 -1
  42. data/spec/unit/filter_spec.rb +133 -0
  43. data/spec/unit/ordered_spec.rb +369 -0
  44. data/spec/unit/orders/list_node_spec.rb +151 -0
  45. data/spec/unit/orders/ordered_list_spec.rb +335 -0
  46. data/spec/unit/orders/reflection_spec.rb +22 -0
  47. data/spec/unit/reflection_spec.rb +2 -4
  48. metadata +25 -3
@@ -0,0 +1,335 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe ActiveFedora::Orders::OrderedList do
4
+ subject { described_class.new(graph, head_uri, tail_uri) }
5
+
6
+ let(:graph) { ActiveTriples::Resource.new(RDF::URI("stuff")) }
7
+ let(:head_uri) { nil }
8
+ let(:tail_uri) { nil }
9
+ describe "#last" do
10
+ context "with no nodes" do
11
+ it "is nil" do
12
+ expect(subject.last).to eq nil
13
+ end
14
+ end
15
+ context "with one node" do
16
+ it "is that node" do
17
+ member = instance_double(ActiveFedora::Base)
18
+ subject.append_target member
19
+
20
+ expect(subject.last.target).to eq member
21
+ end
22
+ end
23
+ context "with two nodes" do
24
+ it "is the last node" do
25
+ member = instance_double(ActiveFedora::Base)
26
+ member_2 = instance_double(ActiveFedora::Base)
27
+ subject.append_target member
28
+ subject.append_target member_2
29
+
30
+ expect(subject.last.target).to eq member_2
31
+ end
32
+ end
33
+ end
34
+
35
+ describe "#order_will_change!" do
36
+ it "marks it as changed" do
37
+ expect(subject).not_to be_changed
38
+ subject.order_will_change!
39
+ expect(subject).to be_changed
40
+ end
41
+ end
42
+
43
+ describe "#target_ids" do
44
+ context "from a graph" do
45
+ let(:head_uri) { RDF::URI.new("parent#bla") }
46
+ let(:tail_uri) { RDF::URI.new("parent#bla") }
47
+ it "returns the IDs without building the object" do
48
+ node_subject = RDF::URI.new("parent#bla")
49
+ member_uri = RDF::URI.new(ActiveFedora::Base.translate_id_to_uri.call("member1"))
50
+ parent_uri = RDF::URI.new("parent")
51
+ graph << [node_subject, RDF::Vocab::ORE.proxyFor, member_uri]
52
+ graph << [node_subject, RDF::Vocab::ORE.proxyIn, parent_uri]
53
+ allow(ActiveFedora::Base).to receive(:from_uri)
54
+
55
+ expect(subject.target_ids).to eq ["member1"]
56
+ expect(ActiveFedora::Base).not_to have_received(:from_uri)
57
+ end
58
+ end
59
+ context "from a built up list" do
60
+ it "returns the IDs" do
61
+ member = instance_double(ActiveFedora::Base, id: "member1")
62
+ subject.append_target member
63
+
64
+ expect(subject.target_ids).to eq ["member1"]
65
+ end
66
+ end
67
+ end
68
+
69
+ describe "#proxy_in" do
70
+ context "when there's one proxy in" do
71
+ it "returns it" do
72
+ member = instance_double(ActiveFedora::Base)
73
+ subject.append_target member, proxy_in: RDF::URI("http://tar.dis")
74
+
75
+ expect(subject.proxy_in).to eq RDF::URI("http://tar.dis")
76
+ end
77
+ end
78
+ context "when the proxy in is an AF::Base object" do
79
+ it "returns the ID" do
80
+ member = instance_double(ActiveFedora::Base)
81
+ owner = instance_double(ActiveFedora::Base, id: "member1")
82
+ subject.append_target member, proxy_in: owner
83
+
84
+ expect(subject.proxy_in).to eq "member1"
85
+ end
86
+ end
87
+ context "when there's two proxy ins" do
88
+ it "returns the first and throws a warning" do
89
+ member = instance_double(ActiveFedora::Base)
90
+ subject.append_target member, proxy_in: RDF::URI("http://tar.dis")
91
+ subject.append_target member, proxy_in: RDF::URI("http://tar.di")
92
+ ActiveFedora::Base.logger = Logger.new(STDERR)
93
+ allow(ActiveFedora::Base.logger).to receive(:warn)
94
+
95
+ expect(subject.proxy_in).to eq RDF::URI("http://tar.dis")
96
+ expect(ActiveFedora::Base.logger).to have_received(:warn).with("WARNING: List contains nodes aggregated under different URIs. Returning only the first.")
97
+ end
98
+ end
99
+ end
100
+
101
+ describe "#[]" do
102
+ context "with no nodes" do
103
+ it "is always nil" do
104
+ expect(subject[0]).to eq nil
105
+ end
106
+ end
107
+ context "with two nodes" do
108
+ let(:member) { instance_double(ActiveFedora::Base) }
109
+ let(:member_2) { instance_double(ActiveFedora::Base) }
110
+ before do
111
+ subject.append_target member
112
+ subject.append_target member_2
113
+ end
114
+ it "can return the first" do
115
+ expect(subject[0].target).to eq member
116
+ end
117
+ it "can return the last" do
118
+ expect(subject[1].target).to eq member_2
119
+ end
120
+ it "returns nil for out of bounds values" do
121
+ expect(subject[3]).to eq nil
122
+ end
123
+ end
124
+ end
125
+ describe "#first" do
126
+ context "with no nodes" do
127
+ it "is nil" do
128
+ expect(subject.first).to eq nil
129
+ end
130
+ end
131
+ context "with a node" do
132
+ it "returns that node" do
133
+ member = instance_double(ActiveFedora::Base)
134
+ subject.append_target member
135
+ expect(subject.first.target).to eq member
136
+ expect(subject).to be_changed
137
+ end
138
+ end
139
+ context "with an item from the graph" do
140
+ let(:head_uri) { RDF::URI.new("parent#bla") }
141
+ let(:tail_uri) { RDF::URI.new("parent#bla") }
142
+ it "builds the node" do
143
+ node_subject = RDF::URI.new("parent#bla")
144
+ member_uri = RDF::URI.new("member1")
145
+ parent_uri = RDF::URI.new("parent")
146
+ graph << [node_subject, RDF::Vocab::ORE.proxyFor, member_uri]
147
+ graph << [node_subject, RDF::Vocab::ORE.proxyIn, parent_uri]
148
+ expect(subject.first.proxy_for).to eq member_uri
149
+ expect(subject.first.proxy_for).to be_kind_of RDF::URI
150
+ expect(subject.first.proxy_in).to eq parent_uri
151
+ expect(subject.first).not_to eq nil
152
+ end
153
+ it "is changed by a delete" do
154
+ node_subject = RDF::URI.new("parent#bla")
155
+ member_uri = RDF::URI.new("member1")
156
+ parent_uri = RDF::URI.new("parent")
157
+ graph << [node_subject, RDF::Vocab::ORE.proxyFor, member_uri]
158
+ graph << [node_subject, RDF::Vocab::ORE.proxyIn, parent_uri]
159
+
160
+ expect(subject).not_to be_changed
161
+ subject.delete_at(0)
162
+ expect(subject).to be_changed
163
+ end
164
+ context "with multiple nodes" do
165
+ let(:tail_uri) { RDF::URI.new("parent#bla2") }
166
+ it "can build multiple nodes" do
167
+ node_subject = RDF::URI.new("parent#bla")
168
+ node_2_subject = RDF::URI.new("parent#bla2")
169
+ member_uri = RDF::URI.new("member1")
170
+ parent_uri = RDF::URI.new("parent")
171
+ graph << [node_subject, RDF::Vocab::ORE.proxyFor, member_uri]
172
+ graph << [node_subject, RDF::Vocab::ORE.proxyIn, parent_uri]
173
+ graph << [node_subject, RDF::Vocab::IANA.next, node_2_subject]
174
+ graph << [node_2_subject, RDF::Vocab::IANA.prev, node_subject]
175
+ graph << [node_2_subject, RDF::Vocab::ORE.proxyFor, member_uri]
176
+ graph << [node_2_subject, RDF::Vocab::ORE.proxyIn, parent_uri]
177
+ expect(subject.length).to eq 2
178
+ expect(subject.tail.prev.prev).to eq subject.head.next
179
+ expect(subject.map(&:target).map(&:rdf_subject)).to eq [member_uri, member_uri]
180
+ expect(subject).not_to be_changed
181
+ end
182
+ end
183
+ end
184
+ end
185
+
186
+ describe "#append_target" do
187
+ it "appends multiple targets" do
188
+ member = instance_double(ActiveFedora::Base)
189
+ proxy_in = instance_double(ActiveFedora::Base, uri: RDF::URI("obj1"))
190
+ 600.times do
191
+ subject.append_target member, proxy_in: proxy_in
192
+ end
193
+ expect(subject.length).to eq 600
194
+ expect(subject.to_a.last.next).not_to eq nil
195
+ expect(subject.to_a.last.proxy_in).to eq proxy_in
196
+ end
197
+ end
198
+
199
+ describe "#insert_at" do
200
+ it "can insert in the middle" do
201
+ member = instance_double(ActiveFedora::Base)
202
+ member_2 = instance_double(ActiveFedora::Base)
203
+ 3.times do
204
+ subject.append_target member
205
+ end
206
+
207
+ subject.insert_at(1, member_2)
208
+
209
+ expect(subject.to_a.map(&:target)).to eq [member, member_2, member, member]
210
+ expect(subject).to be_changed
211
+ end
212
+ it "can insert at the beginning" do
213
+ member = instance_double(ActiveFedora::Base)
214
+ member_2 = instance_double(ActiveFedora::Base)
215
+ 2.times do
216
+ subject.append_target member
217
+ end
218
+
219
+ subject.insert_at(0, member_2)
220
+
221
+ expect(subject.to_a.map(&:target)).to eq [member_2, member, member]
222
+ end
223
+ end
224
+
225
+ describe "#delete_node" do
226
+ it "can delete a node in the middle" do
227
+ member = instance_double(ActiveFedora::Base)
228
+ member_2 = instance_double(ActiveFedora::Base)
229
+ subject.append_target member
230
+ subject.append_target member_2
231
+ subject.append_target member
232
+
233
+ subject.delete_node(subject.to_a[1])
234
+
235
+ expect(subject.map(&:target)).to eq [member, member]
236
+ end
237
+ it "can delete a node at the start" do
238
+ member = instance_double(ActiveFedora::Base)
239
+ member_2 = instance_double(ActiveFedora::Base)
240
+ subject.append_target member_2
241
+ subject.append_target member
242
+ subject.append_target member
243
+
244
+ subject.delete_node(subject.to_a[0])
245
+
246
+ expect(subject.map(&:target)).to eq [member, member]
247
+ end
248
+ it "can delete a node at the end" do
249
+ member = instance_double(ActiveFedora::Base)
250
+ member_2 = instance_double(ActiveFedora::Base)
251
+ subject.append_target member
252
+ subject.append_target member
253
+ subject.append_target member_2
254
+
255
+ subject.delete_node(subject.to_a[2])
256
+
257
+ expect(subject.map(&:target)).to eq [member, member]
258
+ end
259
+ end
260
+
261
+ describe "#delete_at" do
262
+ it "can delete a node in the middle" do
263
+ member = instance_double(ActiveFedora::Base)
264
+ member_2 = instance_double(ActiveFedora::Base)
265
+ subject.append_target member
266
+ subject.append_target member_2
267
+ subject.append_target member
268
+
269
+ subject.delete_at(1)
270
+
271
+ expect(subject.map(&:target)).to eq [member, member]
272
+ end
273
+ it "can delete a node at the start" do
274
+ member = instance_double(ActiveFedora::Base)
275
+ member_2 = instance_double(ActiveFedora::Base)
276
+ subject.append_target member_2
277
+ subject.append_target member
278
+ subject.append_target member
279
+
280
+ subject.delete_at(0)
281
+
282
+ expect(subject.map(&:target)).to eq [member, member]
283
+ end
284
+ it "can delete a node at the end" do
285
+ member = instance_double(ActiveFedora::Base)
286
+ member_2 = instance_double(ActiveFedora::Base)
287
+ subject.append_target member
288
+ subject.append_target member
289
+ subject.append_target member_2
290
+
291
+ subject.delete_at(2)
292
+
293
+ expect(subject.map(&:target)).to eq [member, member]
294
+ end
295
+ it "does not delete nodes if the loc is out of bounds" do
296
+ member = instance_double(ActiveFedora::Base)
297
+ member_2 = instance_double(ActiveFedora::Base)
298
+ subject.append_target member
299
+ subject.append_target member
300
+ subject.append_target member_2
301
+
302
+ subject.delete_at(3)
303
+ subject.delete_at(nil)
304
+
305
+ expect(subject.map(&:target)).to eq [member, member, member_2]
306
+ end
307
+ end
308
+
309
+ describe "#to_graph" do
310
+ it "creates a good graph" do
311
+ member = instance_double(ActiveFedora::Base, id: '123/456')
312
+ owner = instance_double(ActiveFedora::Base, uri: RDF::URI("http://owner.org"))
313
+ subject.append_target member
314
+ subject.append_target member, proxy_in: owner
315
+
316
+ graph = subject.to_graph
317
+
318
+ expect(graph.statements.to_a.length).to eq 5
319
+ expect(graph.subjects.to_a).to eq subject.to_a.map(&:rdf_subject)
320
+ expect(graph.query([nil, RDF::Vocab::ORE.proxyFor, nil]).to_a.last.object).to be_kind_of RDF::URI
321
+ end
322
+ end
323
+
324
+ describe "#changes_committed!" do
325
+ it "sets changed back to false" do
326
+ member = instance_double(ActiveFedora::Base, uri: RDF::URI("http://test.org"))
327
+ subject.append_target member
328
+ expect(subject).to be_changed
329
+
330
+ subject.changes_committed!
331
+
332
+ expect(subject).not_to be_changed
333
+ end
334
+ end
335
+ end
@@ -0,0 +1,22 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe ActiveFedora::Reflection::OrdersReflection do
4
+ subject { described_class.new(name, scope, options, active_fedora) }
5
+ let(:macro) { :orders }
6
+ let(:name) { "ordered_member_proxies" }
7
+ let(:options) { {} }
8
+ let(:scope) { nil }
9
+ let(:active_fedora) { double("active_fedora") }
10
+
11
+ describe "#klass" do
12
+ it "is a proxy" do
13
+ expect(subject.klass).to eq ActiveFedora::Orders::ListNode
14
+ end
15
+ end
16
+
17
+ describe "#class_name" do
18
+ it "is a list node" do
19
+ expect(subject.class_name).to eq "ActiveFedora::Orders::ListNode"
20
+ end
21
+ end
22
+ end
@@ -5,11 +5,10 @@ describe ActiveFedora::Reflection::AssociationReflection do
5
5
  let(:name) { 'dummy' }
6
6
  let(:options) { { inverse_of: :default_permissions } }
7
7
  let(:active_fedora) { double }
8
- let(:instance) { described_class.new(macro, name, nil, options, active_fedora) }
9
8
  subject { instance.send :derive_foreign_key }
10
9
 
11
10
  context "when a has_many" do
12
- let(:macro) { :has_many }
11
+ let(:instance) { ActiveFedora::Reflection::HasManyReflection.new(name, nil, options, active_fedora) }
13
12
 
14
13
  context "and the inverse is a collection association" do
15
14
  let(:inverse) { double(collection?: true) }
@@ -30,11 +29,10 @@ describe ActiveFedora::Reflection::AssociationReflection do
30
29
  let(:name) { 'dummy' }
31
30
  let(:options) { { as: 'foothing' } }
32
31
  let(:active_fedora) { double }
33
- let(:instance) { described_class.new(macro, name, nil, options, active_fedora) }
34
32
  subject { instance.send :automatic_inverse_of }
35
33
 
36
34
  context "when a has_many" do
37
- let(:macro) { :has_many }
35
+ let(:instance) { ActiveFedora::Reflection::HasManyReflection.new(name, nil, options, active_fedora) }
38
36
 
39
37
  context "and the inverse is a collection association" do
40
38
  it { is_expected.to eq :foothing }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active-fedora
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.10.4
4
+ version: 9.11.0
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-03-28 00:00:00.000000000 Z
13
+ date: 2016-04-15 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rsolr
@@ -368,6 +368,11 @@ files:
368
368
  - config/solr.yml
369
369
  - lib/active-fedora.rb
370
370
  - lib/active_fedora.rb
371
+ - lib/active_fedora/aggregation.rb
372
+ - lib/active_fedora/aggregation/base_extension.rb
373
+ - lib/active_fedora/aggregation/list_source.rb
374
+ - lib/active_fedora/aggregation/ordered_reader.rb
375
+ - lib/active_fedora/aggregation/proxy.rb
371
376
  - lib/active_fedora/association_hash.rb
372
377
  - lib/active_fedora/association_relation.rb
373
378
  - lib/active_fedora/associations.rb
@@ -375,15 +380,18 @@ files:
375
380
  - lib/active_fedora/associations/association_scope.rb
376
381
  - lib/active_fedora/associations/basic_contains_association.rb
377
382
  - lib/active_fedora/associations/belongs_to_association.rb
383
+ - lib/active_fedora/associations/builder/aggregation.rb
378
384
  - lib/active_fedora/associations/builder/association.rb
379
385
  - lib/active_fedora/associations/builder/belongs_to.rb
380
386
  - lib/active_fedora/associations/builder/collection_association.rb
381
387
  - lib/active_fedora/associations/builder/contains.rb
382
388
  - lib/active_fedora/associations/builder/directly_contains.rb
383
389
  - lib/active_fedora/associations/builder/directly_contains_one.rb
390
+ - lib/active_fedora/associations/builder/filter.rb
384
391
  - lib/active_fedora/associations/builder/has_and_belongs_to_many.rb
385
392
  - lib/active_fedora/associations/builder/has_many.rb
386
393
  - lib/active_fedora/associations/builder/indirectly_contains.rb
394
+ - lib/active_fedora/associations/builder/orders.rb
387
395
  - lib/active_fedora/associations/builder/property.rb
388
396
  - lib/active_fedora/associations/builder/singular_association.rb
389
397
  - lib/active_fedora/associations/builder/singular_property.rb
@@ -395,11 +403,13 @@ files:
395
403
  - lib/active_fedora/associations/delete_proxy.rb
396
404
  - lib/active_fedora/associations/directly_contains_association.rb
397
405
  - lib/active_fedora/associations/directly_contains_one_association.rb
406
+ - lib/active_fedora/associations/filter_association.rb
398
407
  - lib/active_fedora/associations/has_and_belongs_to_many_association.rb
399
408
  - lib/active_fedora/associations/has_many_association.rb
400
409
  - lib/active_fedora/associations/id_composite.rb
401
410
  - lib/active_fedora/associations/indirectly_contains_association.rb
402
411
  - lib/active_fedora/associations/null_validator.rb
412
+ - lib/active_fedora/associations/orders_association.rb
403
413
  - lib/active_fedora/associations/rdf.rb
404
414
  - lib/active_fedora/associations/record_composite.rb
405
415
  - lib/active_fedora/associations/singular_association.rb
@@ -474,6 +484,11 @@ files:
474
484
  - lib/active_fedora/nom_datastream.rb
475
485
  - lib/active_fedora/null_relation.rb
476
486
  - lib/active_fedora/om_datastream.rb
487
+ - lib/active_fedora/orders.rb
488
+ - lib/active_fedora/orders/collection_proxy.rb
489
+ - lib/active_fedora/orders/list_node.rb
490
+ - lib/active_fedora/orders/ordered_list.rb
491
+ - lib/active_fedora/orders/target_proxy.rb
477
492
  - lib/active_fedora/pathing.rb
478
493
  - lib/active_fedora/persistence.rb
479
494
  - lib/active_fedora/predicates.rb
@@ -651,6 +666,8 @@ files:
651
666
  - spec/spec_helper.rb
652
667
  - spec/support/an_active_model.rb
653
668
  - spec/unit/active_fedora_spec.rb
669
+ - spec/unit/aggregation/list_source_spec.rb
670
+ - spec/unit/aggregation/ordered_reader_spec.rb
654
671
  - spec/unit/association_hash_spec.rb
655
672
  - spec/unit/attached_files_spec.rb
656
673
  - spec/unit/attributes_spec.rb
@@ -675,6 +692,7 @@ files:
675
692
  - spec/unit/file_path_builder_spec.rb
676
693
  - spec/unit/file_spec.rb
677
694
  - spec/unit/files_hash_spec.rb
695
+ - spec/unit/filter_spec.rb
678
696
  - spec/unit/finder_methods_spec.rb
679
697
  - spec/unit/fixity_service_spec.rb
680
698
  - spec/unit/forbidden_attributes_protection_spec.rb
@@ -692,6 +710,10 @@ files:
692
710
  - spec/unit/nom_datastream_spec.rb
693
711
  - spec/unit/ntriples_datastream_spec.rb
694
712
  - spec/unit/om_datastream_spec.rb
713
+ - spec/unit/ordered_spec.rb
714
+ - spec/unit/orders/list_node_spec.rb
715
+ - spec/unit/orders/ordered_list_spec.rb
716
+ - spec/unit/orders/reflection_spec.rb
695
717
  - spec/unit/pathing_spec.rb
696
718
  - spec/unit/persistence_spec.rb
697
719
  - spec/unit/predicates_spec.rb
@@ -741,7 +763,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
741
763
  version: '0'
742
764
  requirements: []
743
765
  rubyforge_project:
744
- rubygems_version: 2.5.1
766
+ rubygems_version: 2.4.5.1
745
767
  signing_key:
746
768
  specification_version: 4
747
769
  summary: A convenience libary for manipulating documents in the Fedora Repository.