fedora_lens 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f8a0a4bf460274072101c5095f365d6c6a409d7b
4
- data.tar.gz: 6e0cbfde2267b95dd38fec8621871fd6a9625451
3
+ metadata.gz: 4aed41f4f03e56d39025a4c4afc83c2f104fbe13
4
+ data.tar.gz: 67a75716a078d141c39762c027683aa815bd85bf
5
5
  SHA512:
6
- metadata.gz: ef00a7de221518a88b701bacc8fc0a9b32f63ae2b5dc5063c9bb83e51a82ecd80bcbd4bee65879355147b5f8374e456fd2587118ad1353391d9b5b4a367f0990
7
- data.tar.gz: d8775ef12c0e7223111a6d6f5c1b08072eed19ca9883f9b2a119c48686fa6b2d358cd5491a93c7d8f5986f8e6c869aa5381a74cda220aba5dc70002166fed0ad
6
+ metadata.gz: 5b625651f21a93d934616e81deb447c1a3946fa146512a6d2ff15b737a95cab4fa1dfe0c7e4ad692a11dcb365d5dd5250432a5c72e98573a161df36671a31003
7
+ data.tar.gz: d70beed3541744109be8e91cc1aec93e40ebfc9e20b70a3df828f8476cb97b510ea96914ea62339abc75353135032a6e589daa6d4cf68ce700dcbea828fbc59f
@@ -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
@@ -1,3 +1,3 @@
1
1
  module FedoraLens
2
- VERSION = '0.0.10'
2
+ VERSION = '0.0.11'
3
3
  end
@@ -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
@@ -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.10
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-22 00:00:00.000000000 Z
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.2.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