rdf-spec 1.1.3 → 1.1.5
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/VERSION +1 -1
- data/lib/rdf/spec.rb +1 -0
- data/lib/rdf/spec/countable.rb +3 -1
- data/lib/rdf/spec/enumerable.rb +4 -2
- data/lib/rdf/spec/matchers.rb +83 -2
- data/lib/rdf/spec/mutable.rb +51 -60
- data/lib/rdf/spec/queryable.rb +8 -6
- data/lib/rdf/spec/reader.rb +1 -1
- data/lib/rdf/spec/writable.rb +58 -71
- data/lib/rdf/spec/writer.rb +1 -1
- metadata +27 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bd937b914454e1beb178c07aea7f67241ef6199a
|
4
|
+
data.tar.gz: 5025462c4843c791c182d73f82e7901dacd8cb24
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 673c8f7b7fa7e7666585833640e61787dcdb9f5edcdf98bc3947b54832aee0d58bc4bc60cfac23fae05ffb9e96a10cc343451cf823a2726d8481e0046f0f2ee0
|
7
|
+
data.tar.gz: d6ccea63ee7aa054de864c8535287e84ddb6cbb791d878c7d5a10e6381addf1c6377ce5a9455bf1968dbda0933a8ff8fdf226fa78cbe8ac35921448ce5ea0635
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.1.
|
1
|
+
1.1.5
|
data/lib/rdf/spec.rb
CHANGED
data/lib/rdf/spec/countable.rb
CHANGED
@@ -10,7 +10,9 @@ module RDF_Countable
|
|
10
10
|
@statements = RDF::Spec.quads
|
11
11
|
|
12
12
|
if @countable.empty?
|
13
|
-
if
|
13
|
+
if (@countable.writable? rescue false)
|
14
|
+
@countable.insert_statements(@statements)
|
15
|
+
elsif @countable.respond_to?(:<<)
|
14
16
|
@statements.each { |statement| @countable << statement }
|
15
17
|
else
|
16
18
|
raise "+@countable+ must respond to #<< or be pre-populated with the statements in #{RDF::Spec::TRIPLES_FILE} in a before(:each) block"
|
data/lib/rdf/spec/enumerable.rb
CHANGED
@@ -10,7 +10,9 @@ module RDF_Enumerable
|
|
10
10
|
@statements ||= RDF::Spec.quads
|
11
11
|
|
12
12
|
if @enumerable.empty?
|
13
|
-
if
|
13
|
+
if (@enumerable.writable? rescue false)
|
14
|
+
@enumerable.insert(*@statements)
|
15
|
+
elsif @enumerable.respond_to?(:<<)
|
14
16
|
@statements.each { |statement| @enumerable << statement }
|
15
17
|
else
|
16
18
|
raise "@enumerable must respond to #<< or be pre-populated with the statements in #{RDF::Spec::TRIPLES_FILE} in a before(:each) block"
|
@@ -439,7 +441,7 @@ module RDF_Enumerable
|
|
439
441
|
subject {@enumerable.enum_graph}
|
440
442
|
it {should be_an_enumerator}
|
441
443
|
it {should be_countable}
|
442
|
-
it "enumerates the same as #each_graph"
|
444
|
+
it "enumerates the same as #each_graph" do
|
443
445
|
expect(subject.to_a).to include(*@enumerable.each_graph.to_a) if @supports_context # expect with match problematic
|
444
446
|
end
|
445
447
|
end
|
data/lib/rdf/spec/matchers.rb
CHANGED
@@ -141,10 +141,16 @@ module RDF; module Spec
|
|
141
141
|
end
|
142
142
|
end
|
143
143
|
|
144
|
-
RSpec::Matchers.define :
|
144
|
+
RSpec::Matchers.define :have_terms do |base_uri, klasses|
|
145
145
|
match do |vocabulary|
|
146
146
|
klasses.map { |k| k.to_sym }.each do |klass|
|
147
|
-
|
147
|
+
expect(vocabulary[klass]).to be_a_uri
|
148
|
+
expect(vocabulary[klass].to_s).to eq "#{base_uri}#{klass}"
|
149
|
+
expect(vocabulary).to respond_to(klass)
|
150
|
+
expect { vocabulary.send(klass) }.not_to raise_error
|
151
|
+
expect(vocabulary.send(klass)).to be_a_uri
|
152
|
+
expect(vocabulary.send(klass.to_s)).to be_a_uri
|
153
|
+
expect(vocabulary.send(klass).to_s).to eq "#{base_uri}#{klass}"
|
148
154
|
end
|
149
155
|
true
|
150
156
|
end
|
@@ -173,5 +179,80 @@ module RDF; module Spec
|
|
173
179
|
end
|
174
180
|
end
|
175
181
|
end
|
182
|
+
|
183
|
+
RSpec::Matchers.define :write do |message|
|
184
|
+
chain(:to) do |io|
|
185
|
+
@io = io
|
186
|
+
end
|
187
|
+
|
188
|
+
supports_block_expectations {true}
|
189
|
+
|
190
|
+
match do |block|
|
191
|
+
@output =
|
192
|
+
case io
|
193
|
+
when :output then fake_stdout(&block)
|
194
|
+
when :error then fake_stderr(&block)
|
195
|
+
else raise("Allowed values for `to` are :output and :error, got `#{io.inspect}`")
|
196
|
+
end
|
197
|
+
case message
|
198
|
+
when nil, :something, :anything
|
199
|
+
!@output.empty?
|
200
|
+
when Regexp
|
201
|
+
message.match(@output)
|
202
|
+
else
|
203
|
+
@output.include? message
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
description do
|
208
|
+
"write \"#{message}\" #{io_name}"
|
209
|
+
end
|
210
|
+
|
211
|
+
failure_message do
|
212
|
+
@exception ? @exception.message :
|
213
|
+
"expected to include #{description.inspect} in #{@output.inspect}"
|
214
|
+
end
|
215
|
+
|
216
|
+
failure_message_when_negated do
|
217
|
+
@exception ? @exception.message :
|
218
|
+
"expected to not include #{description.inspect} in #{@output.inspect}"
|
219
|
+
end
|
220
|
+
|
221
|
+
# Fake $stderr and return a string written to it.
|
222
|
+
def fake_stderr
|
223
|
+
original_stderr = $stderr
|
224
|
+
$stderr = StringIO.new
|
225
|
+
yield
|
226
|
+
$stderr.string
|
227
|
+
rescue RSpec::Expectations::ExpectationNotMetError => e
|
228
|
+
@exception = e
|
229
|
+
raise
|
230
|
+
ensure
|
231
|
+
$stderr = original_stderr
|
232
|
+
end
|
233
|
+
|
234
|
+
# Fake $stdout and return a string written to it.
|
235
|
+
def fake_stdout
|
236
|
+
original_stdout = $stdout
|
237
|
+
$stdout = StringIO.new
|
238
|
+
yield
|
239
|
+
$stdout.string
|
240
|
+
rescue RSpec::Expectations::ExpectationNotMetError => e
|
241
|
+
@exception = e
|
242
|
+
raise
|
243
|
+
ensure
|
244
|
+
$stdout = original_stdout
|
245
|
+
end
|
246
|
+
|
247
|
+
# default IO is standard output
|
248
|
+
def io
|
249
|
+
@io ||= :output
|
250
|
+
end
|
251
|
+
|
252
|
+
# IO name is used for description message
|
253
|
+
def io_name
|
254
|
+
{:output => "standard output", :error => "standard error"}[io]
|
255
|
+
end
|
256
|
+
end
|
176
257
|
end # Matchers
|
177
258
|
end; end # RDF::Spec
|
data/lib/rdf/spec/mutable.rb
CHANGED
@@ -53,31 +53,27 @@ module RDF_Mutable
|
|
53
53
|
end
|
54
54
|
|
55
55
|
it "should accept a string filename argument" do
|
56
|
-
|
57
|
-
|
58
|
-
end
|
56
|
+
skip("mutability") unless subject.mutable?
|
57
|
+
expect { subject.load(RDF::Spec::TRIPLES_FILE) }.not_to raise_error
|
59
58
|
end
|
60
59
|
|
61
60
|
it "should accept an optional hash argument" do
|
62
|
-
|
63
|
-
|
64
|
-
end
|
61
|
+
skip("mutability") unless subject.mutable?
|
62
|
+
expect { subject.load(RDF::Spec::TRIPLES_FILE, {}) }.not_to raise_error
|
65
63
|
end
|
66
64
|
|
67
65
|
it "should load statements" do
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
end
|
66
|
+
skip("mutability") unless subject.mutable?
|
67
|
+
subject.load RDF::Spec::TRIPLES_FILE
|
68
|
+
expect(subject.size).to eq File.readlines(RDF::Spec::TRIPLES_FILE).size
|
69
|
+
expect(subject).to have_subject(resource)
|
73
70
|
end
|
74
71
|
|
75
72
|
it "should load statements with a context override" do
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
end
|
73
|
+
skip("mutability and contextuality") unless (subject.mutable? && @supports_context)
|
74
|
+
subject.load RDF::Spec::TRIPLES_FILE, :context => context
|
75
|
+
expect(subject).to have_context(context)
|
76
|
+
expect(subject.query(:context => context).size).to eq subject.size
|
81
77
|
end
|
82
78
|
end
|
83
79
|
|
@@ -97,62 +93,57 @@ module RDF_Mutable
|
|
97
93
|
end
|
98
94
|
|
99
95
|
it "should not raise errors" do
|
100
|
-
|
101
|
-
|
102
|
-
end
|
96
|
+
skip("mutability") unless subject.mutable?
|
97
|
+
expect { subject.delete(@statements.first) }.not_to raise_error
|
103
98
|
end
|
104
99
|
|
105
100
|
it "should support deleting one statement at a time" do
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
end
|
101
|
+
skip("mutability") unless subject.mutable?
|
102
|
+
subject.delete(@statements.first)
|
103
|
+
expect(subject).not_to have_statement(@statements.first)
|
110
104
|
end
|
111
105
|
|
112
106
|
it "should support deleting multiple statements at a time" do
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
end
|
107
|
+
skip("mutability") unless subject.mutable?
|
108
|
+
subject.delete(*@statements)
|
109
|
+
expect(subject.find { |s| subject.has_statement?(s) }).to be_nil
|
117
110
|
end
|
118
111
|
|
119
112
|
it "should support wildcard deletions" do
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
end
|
113
|
+
skip("mutability") unless subject.mutable?
|
114
|
+
# nothing deleted
|
115
|
+
require 'digest/sha1'
|
116
|
+
count = subject.count
|
117
|
+
subject.delete([nil, nil, Digest::SHA1.hexdigest(File.read(__FILE__))])
|
118
|
+
expect(subject).not_to be_empty
|
119
|
+
expect(subject.count).to eq count
|
120
|
+
|
121
|
+
# everything deleted
|
122
|
+
subject.delete([nil, nil, nil])
|
123
|
+
expect(subject).to be_empty
|
132
124
|
end
|
133
125
|
|
134
126
|
it "should only delete statements when the context matches" do
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
end
|
127
|
+
skip("mutability") unless subject.mutable?
|
128
|
+
# Setup three statements identical except for context
|
129
|
+
count = subject.count + (@supports_context ? 3 : 1)
|
130
|
+
s1 = RDF::Statement.new(resource, RDF::URI.new("urn:predicate:1"), RDF::URI.new("urn:object:1"))
|
131
|
+
s2 = s1.dup
|
132
|
+
s2.context = RDF::URI.new("urn:context:1")
|
133
|
+
s3 = s1.dup
|
134
|
+
s3.context = RDF::URI.new("urn:context:2")
|
135
|
+
subject.insert(s1)
|
136
|
+
subject.insert(s2)
|
137
|
+
subject.insert(s3)
|
138
|
+
expect(subject.count).to eq count
|
139
|
+
|
140
|
+
# Delete one by one
|
141
|
+
subject.delete(s1)
|
142
|
+
expect(subject.count).to eq count - (@supports_context ? 1 : 1)
|
143
|
+
subject.delete(s2)
|
144
|
+
expect(subject.count).to eq count - (@supports_context ? 2 : 1)
|
145
|
+
subject.delete(s3)
|
146
|
+
expect(subject.count).to eq count - (@supports_context ? 3 : 1)
|
156
147
|
end
|
157
148
|
end
|
158
149
|
end
|
data/lib/rdf/spec/queryable.rb
CHANGED
@@ -11,7 +11,9 @@ module RDF_Queryable
|
|
11
11
|
@statements = RDF::Spec.quads
|
12
12
|
|
13
13
|
if @queryable.empty?
|
14
|
-
if
|
14
|
+
if (@queryable.writable? rescue false)
|
15
|
+
@queryable.insert(*@statements)
|
16
|
+
elsif @queryable.respond_to?(:<<)
|
15
17
|
@statements.each { |statement| @queryable << statement }
|
16
18
|
else
|
17
19
|
raise "@queryable must respond to #<< or be pre-populated with the statements in #{@doap} in a before(:each) block"
|
@@ -188,11 +190,11 @@ module RDF_Queryable
|
|
188
190
|
its(:count) {should == 2}
|
189
191
|
|
190
192
|
it "has two solutions" do
|
191
|
-
expect(subject.any? {|s| s.subject == RDF::URI("http://example.org/xi1")}).to
|
193
|
+
expect(subject.any? {|s| s.subject == RDF::URI("http://example.org/xi1")}).to be_truthy
|
192
194
|
end
|
193
195
|
|
194
196
|
it "has xi2 as a solution" do
|
195
|
-
expect(subject.any? {|s| s.subject == RDF::URI("http://example.org/xi2")}).to
|
197
|
+
expect(subject.any? {|s| s.subject == RDF::URI("http://example.org/xi2")}).to be_truthy
|
196
198
|
end
|
197
199
|
end
|
198
200
|
|
@@ -201,7 +203,7 @@ module RDF_Queryable
|
|
201
203
|
its(:count) {should == 1}
|
202
204
|
|
203
205
|
it "has xd1 as a solution" do
|
204
|
-
expect(subject.any? {|s| s.subject == RDF::URI("http://example.org/xd1")}).to
|
206
|
+
expect(subject.any? {|s| s.subject == RDF::URI("http://example.org/xd1")}).to be_truthy
|
205
207
|
end
|
206
208
|
end
|
207
209
|
end
|
@@ -213,7 +215,7 @@ module RDF_Queryable
|
|
213
215
|
# @see RDF::Queryable#query_execute
|
214
216
|
describe "#query_execute" do
|
215
217
|
it "defines a protected #query_execute method" do
|
216
|
-
expect(subject.class.protected_method_defined?(:query_execute)).to
|
218
|
+
expect(subject.class.protected_method_defined?(:query_execute)).to be_truthy
|
217
219
|
end
|
218
220
|
|
219
221
|
context "when called" do
|
@@ -237,7 +239,7 @@ module RDF_Queryable
|
|
237
239
|
# @see RDF::Queryable#query_pattern
|
238
240
|
describe "#query_pattern" do
|
239
241
|
it "defines a protected #query_pattern method" do
|
240
|
-
expect(subject.class.protected_method_defined?(:query_pattern)).to
|
242
|
+
expect(subject.class.protected_method_defined?(:query_pattern)).to be_truthy
|
241
243
|
end
|
242
244
|
|
243
245
|
context "when called" do
|
data/lib/rdf/spec/reader.rb
CHANGED
@@ -22,7 +22,7 @@ module RDF_Reader
|
|
22
22
|
|
23
23
|
describe ".open" do
|
24
24
|
before(:each) do
|
25
|
-
RDF::Util::File.
|
25
|
+
allow(RDF::Util::File).to receive(:open_file).and_yield(StringIO.new(@reader_input))
|
26
26
|
end
|
27
27
|
|
28
28
|
it "yields reader given file_name" do
|
data/lib/rdf/spec/writable.rb
CHANGED
@@ -23,115 +23,102 @@ module RDF_Writable
|
|
23
23
|
|
24
24
|
describe "#<<" do
|
25
25
|
it "inserts a reader" do
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
end
|
26
|
+
skip("writability") unless subject.writable?
|
27
|
+
reader = RDF::NTriples::Reader.new(File.open(@filename)).to_a
|
28
|
+
subject << reader
|
29
|
+
expect(subject).to have_statement(statement)
|
30
|
+
expect(subject.count).to eq count
|
32
31
|
end
|
33
32
|
|
34
33
|
it "inserts a graph" do
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
end
|
34
|
+
skip("writability") unless subject.writable?
|
35
|
+
graph = RDF::Graph.new << @statements
|
36
|
+
subject << graph
|
37
|
+
expect(subject).to have_statement(statement)
|
38
|
+
expect(subject.count).to eq count
|
41
39
|
end
|
42
40
|
|
43
41
|
it "inserts an enumerable" do
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
end
|
42
|
+
skip("writability") unless subject.writable?
|
43
|
+
enumerable = @statements.dup.extend(RDF::Enumerable)
|
44
|
+
subject << enumerable
|
45
|
+
expect(subject).to have_statement(statement)
|
46
|
+
expect(subject.count).to eq count
|
50
47
|
end
|
51
48
|
|
52
49
|
it "inserts data responding to #to_rdf" do
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
end
|
50
|
+
skip("writability") unless subject.writable?
|
51
|
+
mock = double('mock')
|
52
|
+
allow(mock).to receive(:to_rdf).and_return(@statements)
|
53
|
+
subject << mock
|
54
|
+
expect(subject).to have_statement(statement)
|
55
|
+
expect(subject.count).to eq count
|
60
56
|
end
|
61
57
|
|
62
58
|
it "inserts a statement" do
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
end
|
59
|
+
skip("writability") unless subject.writable?
|
60
|
+
subject << statement
|
61
|
+
expect(subject).to have_statement(statement)
|
62
|
+
expect(subject.count).to eq 1
|
68
63
|
end
|
69
64
|
|
70
65
|
it "inserts an invalid statement" do
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
end
|
66
|
+
skip("writability") unless subject.writable?
|
67
|
+
s = RDF::Statement.from([nil, nil, nil])
|
68
|
+
expect(s).not_to be_valid
|
69
|
+
subject << s
|
70
|
+
expect(subject.count).to eq 1
|
77
71
|
end
|
78
72
|
end
|
79
73
|
|
80
74
|
context "when inserting statements" do
|
81
75
|
it "should support #insert" do
|
82
|
-
|
83
|
-
|
84
|
-
end
|
76
|
+
skip("writability") unless subject.writable?
|
77
|
+
expect(subject).to respond_to(:insert)
|
85
78
|
end
|
86
79
|
|
87
80
|
it "should not raise errors" do
|
88
|
-
|
89
|
-
|
90
|
-
end
|
81
|
+
skip("writability") unless subject.writable?
|
82
|
+
expect { subject.insert(statement) }.not_to raise_error
|
91
83
|
end
|
92
84
|
|
93
85
|
it "should support inserting one statement at a time" do
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
end
|
86
|
+
skip("writability") unless subject.writable?
|
87
|
+
subject.insert(statement)
|
88
|
+
expect(subject).to have_statement(statement)
|
98
89
|
end
|
99
90
|
|
100
91
|
it "should support inserting multiple statements at a time" do
|
101
|
-
|
102
|
-
|
103
|
-
end
|
92
|
+
skip("writability") unless subject.writable?
|
93
|
+
subject.insert(*@statements)
|
104
94
|
end
|
105
95
|
|
106
96
|
it "should insert statements successfully" do
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
end
|
97
|
+
skip("writability") unless subject.writable?
|
98
|
+
subject.insert(*@statements)
|
99
|
+
expect(subject.count).to eq count
|
111
100
|
end
|
112
101
|
|
113
102
|
it "should not insert a statement twice" do
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
end
|
103
|
+
skip("writability") unless subject.writable?
|
104
|
+
subject.insert(statement)
|
105
|
+
subject.insert(statement)
|
106
|
+
expect(subject.count).to eq 1
|
119
107
|
end
|
120
108
|
|
121
109
|
it "should treat statements with a different context as distinct" do
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
end
|
110
|
+
skip("writability") unless subject.writable?
|
111
|
+
s1 = statement.dup
|
112
|
+
s1.context = nil
|
113
|
+
s2 = statement.dup
|
114
|
+
s2.context = RDF::URI.new("urn:context:1")
|
115
|
+
s3 = statement.dup
|
116
|
+
s3.context = RDF::URI.new("urn:context:2")
|
117
|
+
subject.insert(s1)
|
118
|
+
subject.insert(s2)
|
119
|
+
subject.insert(s3)
|
120
|
+
# If contexts are not suported, all three are redundant
|
121
|
+
expect(subject.count).to eq (@supports_context ? 3 : 1)
|
135
122
|
end
|
136
123
|
end
|
137
124
|
end
|
data/lib/rdf/spec/writer.rb
CHANGED
@@ -31,7 +31,7 @@ module RDF_Writer
|
|
31
31
|
|
32
32
|
describe ".open" do
|
33
33
|
before(:each) do
|
34
|
-
RDF::Util::File.
|
34
|
+
allow(RDF::Util::File).to receive(:open_file).and_yield(StringIO.new("foo"))
|
35
35
|
@dir = Dir.mktmpdir
|
36
36
|
@basename = File.join(@dir, "foo")
|
37
37
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rdf-spec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arto Bendiken
|
@@ -10,48 +10,62 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-
|
13
|
+
date: 2014-08-24 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rdf
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
|
-
- - ~>
|
19
|
+
- - "~>"
|
20
20
|
- !ruby/object:Gem::Version
|
21
21
|
version: '1.1'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
|
-
- - ~>
|
26
|
+
- - "~>"
|
27
27
|
- !ruby/object:Gem::Version
|
28
28
|
version: '1.1'
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: rspec
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
|
-
- - ~>
|
33
|
+
- - "~>"
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: '
|
36
|
-
type: :
|
35
|
+
version: '3.0'
|
36
|
+
type: :development
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '3.0'
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: rspec-its
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '1.0'
|
50
|
+
type: :development
|
37
51
|
prerelease: false
|
38
52
|
version_requirements: !ruby/object:Gem::Requirement
|
39
53
|
requirements:
|
40
|
-
- - ~>
|
54
|
+
- - "~>"
|
41
55
|
- !ruby/object:Gem::Version
|
42
|
-
version: '
|
56
|
+
version: '1.0'
|
43
57
|
- !ruby/object:Gem::Dependency
|
44
58
|
name: yard
|
45
59
|
requirement: !ruby/object:Gem::Requirement
|
46
60
|
requirements:
|
47
|
-
- - ~>
|
61
|
+
- - "~>"
|
48
62
|
- !ruby/object:Gem::Version
|
49
63
|
version: '0.8'
|
50
64
|
type: :development
|
51
65
|
prerelease: false
|
52
66
|
version_requirements: !ruby/object:Gem::Requirement
|
53
67
|
requirements:
|
54
|
-
- - ~>
|
68
|
+
- - "~>"
|
55
69
|
- !ruby/object:Gem::Version
|
56
70
|
version: '0.8'
|
57
71
|
description: RDF.rb extension that provides RSpec matchers and shared examples for
|
@@ -102,12 +116,12 @@ require_paths:
|
|
102
116
|
- lib
|
103
117
|
required_ruby_version: !ruby/object:Gem::Requirement
|
104
118
|
requirements:
|
105
|
-
- -
|
119
|
+
- - ">="
|
106
120
|
- !ruby/object:Gem::Version
|
107
121
|
version: 1.9.2
|
108
122
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
109
123
|
requirements:
|
110
|
-
- -
|
124
|
+
- - ">="
|
111
125
|
- !ruby/object:Gem::Version
|
112
126
|
version: '0'
|
113
127
|
requirements: []
|