fedora_lens 0.0.10 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/fedora_lens/lenses.rb +1 -0
- data/lib/fedora_lens/version.rb +1 -1
- data/spec/fedora_lens/lenses_spec.rb +12 -4
- data/spec/fedora_lens_spec.rb +21 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4aed41f4f03e56d39025a4c4afc83c2f104fbe13
|
4
|
+
data.tar.gz: 67a75716a078d141c39762c027683aa815bd85bf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5b625651f21a93d934616e81deb447c1a3946fa146512a6d2ff15b737a95cab4fa1dfe0c7e4ad692a11dcb365d5dd5250432a5c72e98573a161df36671a31003
|
7
|
+
data.tar.gz: d70beed3541744109be8e91cc1aec93e40ebfc9e20b70a3df828f8476cb97b510ea96914ea62339abc75353135032a6e589daa6d4cf68ce700dcbea828fbc59f
|
data/lib/fedora_lens/lenses.rb
CHANGED
@@ -134,6 +134,7 @@ module FedoraLens
|
|
134
134
|
put: lambda do |orm, values|
|
135
135
|
empty_property(orm.graph, orm.resource.subject_uri, predicate, opts[:select])
|
136
136
|
Array(values).each do |value|
|
137
|
+
next if value.nil?
|
137
138
|
orm.graph.insert([orm.resource.subject_uri, predicate, value])
|
138
139
|
end
|
139
140
|
orm
|
data/lib/fedora_lens/version.rb
CHANGED
@@ -156,15 +156,23 @@ module FedoraLens
|
|
156
156
|
Lenses.get_predicate(RDF::DC11.description).get(orm).should eq []
|
157
157
|
end
|
158
158
|
|
159
|
+
it "sets the value of an Ldp::Orm for the specified predicate" do
|
160
|
+
subject.put(orm, [RDF::Literal.new("new")]).value(RDF::DC11.title).first.should eq RDF::Literal.new("new")
|
161
|
+
end
|
162
|
+
|
163
|
+
context "when setting nil values (illegal in RDF)" do
|
164
|
+
it "skips them" do
|
165
|
+
expect(subject.put(orm, [nil]).value(RDF::DC11.title)).to be_empty
|
166
|
+
expect(orm.graph.dump(:ttl)).to eq ''
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
170
|
+
|
159
171
|
it "is well-behaved (PutGet: get(put(source, value)) == value)" do
|
160
172
|
converted = subject.get(subject.put(orm, value))
|
161
173
|
expect(converted).to eq value
|
162
174
|
end
|
163
175
|
|
164
|
-
it "sets the value of an Ldp::Orm for the specified predicate" do
|
165
|
-
subject.put(orm, [RDF::Literal.new("new")]).value(RDF::DC11.title).first.should eq RDF::Literal.new("new")
|
166
|
-
end
|
167
|
-
|
168
176
|
it "is well-behaved (GetPut: put(source, get(source)) == source)" do
|
169
177
|
converted = subject.put(orm, subject.get(orm))
|
170
178
|
expect(converted).to eq orm
|
data/spec/fedora_lens_spec.rb
CHANGED
@@ -217,6 +217,27 @@ describe FedoraLens do
|
|
217
217
|
it "mixes rdf and xml" do
|
218
218
|
end
|
219
219
|
|
220
|
+
context "with a nil attribute" do
|
221
|
+
before do
|
222
|
+
class TestClass2
|
223
|
+
include FedoraLens
|
224
|
+
|
225
|
+
attribute :subject, [RDF::DC11.subject, Lenses.single]
|
226
|
+
end
|
227
|
+
end
|
228
|
+
after do
|
229
|
+
Object.send(:remove_const, :TestClass2)
|
230
|
+
end
|
231
|
+
|
232
|
+
subject { TestClass2.new }
|
233
|
+
|
234
|
+
it "should not push nil attributes to orm" do
|
235
|
+
subject.send(:push_attributes_to_orm)
|
236
|
+
expect(subject.orm.graph.dump(:ttl)).to eq('')
|
237
|
+
end
|
238
|
+
|
239
|
+
end
|
240
|
+
|
220
241
|
context "that are inherited" do
|
221
242
|
before do
|
222
243
|
class TestClass2
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fedora_lens
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-07-
|
12
|
+
date: 2014-07-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -180,7 +180,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
180
180
|
version: '0'
|
181
181
|
requirements: []
|
182
182
|
rubyforge_project:
|
183
|
-
rubygems_version: 2.
|
183
|
+
rubygems_version: 2.4.1
|
184
184
|
signing_key:
|
185
185
|
specification_version: 4
|
186
186
|
summary: A client for Fedora Commons Repository (fcrepo) version 4
|