tripod 0.9.4 → 0.9.6

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1498353ae2811f7c6fced7033b9e9f4a3291943e
4
+ data.tar.gz: 0b78fa2cacd589e25d29a7b01d74dbf72680c124
5
+ SHA512:
6
+ metadata.gz: 53236582779d2d9b41c1124e6d610e37189ff817b881499419d707784b5234dfdd135c5d69ebe27e2b0f501c8effdb92554c4e9ff39bfb885bcb691166aeae9b
7
+ data.tar.gz: 2d03193a9747055ad07c00a537528c292217ef7d805744747469ea5b2e73118cf34df923d8a971a91c73e738511b72ecf20eb1c947190afb3e2cd573ec4cb048
data/Gemfile CHANGED
@@ -4,6 +4,6 @@ source 'https://rubygems.org'
4
4
  gemspec
5
5
 
6
6
  group :test do
7
- gem "rspec", "~> 2.14"
7
+ gem "rspec", "~> 2.99.0"
8
8
  gem "webmock"
9
9
  end
data/README.md CHANGED
@@ -130,6 +130,9 @@ Tripod doesn't supply a database. You need to install one. I recommend [Fuseki](
130
130
 
131
131
  Person.where("?uri <http://example.com/name> ?name").limit(1).offset(0).order("DESC(?name)")
132
132
 
133
+ ## Running tests
134
+
135
+ With a Fuseki instance ready and up, edit the config in `spec/spec_helper.rb` to reflect your settings. Make sure you `bundle` to pull in all dependencies before trying to run the tests.
133
136
 
134
137
  [Full Documentation](http://rubydoc.info/gems/tripod/frames)
135
138
 
@@ -60,5 +60,8 @@ module Tripod::EagerLoading
60
60
  r
61
61
  end
62
62
 
63
+ def has_related_resource?(resource_uri, class_of_resource)
64
+ !!get_related_resource(resource_uri, class_of_resource)
65
+ end
63
66
 
64
67
  end
@@ -1,3 +1,3 @@
1
1
  module Tripod
2
- VERSION = "0.9.4"
2
+ VERSION = "0.9.6"
3
3
  end
@@ -138,4 +138,40 @@ describe Tripod::EagerLoading do
138
138
 
139
139
  end
140
140
 
141
+ describe "#has_related_resource?" do
142
+
143
+ context "when eager load not called" do
144
+ context "and related resource exists" do
145
+ it "should return false" do
146
+ @john.has_related_resource?(RDF::URI.new('http://example.com/name'), Resource).should be_false
147
+ end
148
+ end
149
+
150
+ context "and related resource doesn't exist" do
151
+ it "should return false" do
152
+ @john.has_related_resource?(RDF::URI.new('http://example.com/nonexistent/person'), Person).should be_false
153
+ end
154
+ end
155
+ end
156
+
157
+ context "when eager load called" do
158
+ before do
159
+ @john.eager_load_predicate_triples!
160
+ end
161
+
162
+ context "and related resource exists" do
163
+ it "should return true" do
164
+ @john.has_related_resource?(RDF::URI.new('http://example.com/name'), Resource).should be_true
165
+ end
166
+ end
167
+
168
+ context "and related resource doesn't exist" do
169
+ it "should return false" do
170
+ @john.has_related_resource?(RDF::URI.new('http://example.com/nonexistent/person'), Person).should be_false
171
+ end
172
+ end
173
+ end
174
+
175
+ end
176
+
141
177
  end
@@ -36,7 +36,7 @@ describe Tripod::Finders do
36
36
  end
37
37
 
38
38
  it "returns a non-new record" do
39
- person.new_record?.should be_false
39
+ person.new_record?.should be false
40
40
  end
41
41
 
42
42
  end
@@ -219,7 +219,7 @@ describe Tripod::Finders do
219
219
 
220
220
  it "returns non-new records" do
221
221
  res = Person.find_by_sparql('SELECT ?uri ?graph WHERE { GRAPH ?graph { ?uri ?p ?o } }')
222
- res.first.new_record?.should be_false
222
+ res.first.new_record?.should be false
223
223
  end
224
224
 
225
225
  end
@@ -40,7 +40,7 @@ describe Tripod::Persistence do
40
40
  end
41
41
 
42
42
  it 'saves the contents to the db' do
43
- unsaved_person.save.should be_true
43
+ unsaved_person.save.should be true
44
44
 
45
45
  # try reading the data back out.
46
46
  p2 = Person.new(@uri)
@@ -55,7 +55,7 @@ describe Tripod::Persistence do
55
55
 
56
56
  it 'should leave other people untouched' do
57
57
  # save the unsaved person
58
- unsaved_person.save.should be_true
58
+ unsaved_person.save.should be true
59
59
 
60
60
  # read the saved person back out the db, and check he's untouched.
61
61
  p2 = Person.new(saved_person.uri)
@@ -72,7 +72,7 @@ describe Tripod::Persistence do
72
72
  describe ".destroy" do
73
73
 
74
74
  it 'removes all triples from the db' do
75
- saved_person.destroy.should be_true
75
+ saved_person.destroy.should be true
76
76
 
77
77
  # re-load it back into memory
78
78
  p2 = Person.new(@saved_uri)
@@ -204,10 +204,10 @@ describe Tripod::Persistence do
204
204
  transaction = Tripod::Persistence::Transaction.new
205
205
 
206
206
  unsaved_person.stub(:graph_uri).and_return(nil) # force a failure
207
- unsaved_person.save(transaction: transaction).should be_false
207
+ unsaved_person.save(transaction: transaction).should be false
208
208
 
209
209
  saved_person.write_predicate('http://example.com/pred2', 'blah')
210
- saved_person.save(transaction: transaction).should be_true
210
+ saved_person.save(transaction: transaction).should be true
211
211
 
212
212
  transaction.commit
213
213
 
@@ -59,14 +59,14 @@ WHERE abc # bar
59
59
  context "for a query with prefixes" do
60
60
  it "should return true" do
61
61
  q = Tripod::SparqlQuery.new('PREFIX e: <http://example.com> SELECT xyz')
62
- q.has_prefixes?.should be_true
62
+ q.has_prefixes?.should be true
63
63
  end
64
64
  end
65
65
 
66
66
  context "for a query without prefixes" do
67
67
  it "should return false" do
68
68
  q = Tripod::SparqlQuery.new('SELECT xyz')
69
- q.has_prefixes?.should be_false
69
+ q.has_prefixes?.should be false
70
70
  end
71
71
  end
72
72
 
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tripod
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.4
5
- prerelease:
4
+ version: 0.9.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ric Roberts
@@ -11,166 +10,146 @@ authors:
11
10
  autorequire:
12
11
  bindir: bin
13
12
  cert_chain: []
14
- date: 2014-05-08 00:00:00.000000000 Z
13
+ date: 2014-06-09 00:00:00.000000000 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: rest-client
18
17
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
18
  requirements:
21
- - - ! '>='
19
+ - - ">="
22
20
  - !ruby/object:Gem::Version
23
21
  version: '0'
24
22
  type: :runtime
25
23
  prerelease: false
26
24
  version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
25
  requirements:
29
- - - ! '>='
26
+ - - ">="
30
27
  - !ruby/object:Gem::Version
31
28
  version: '0'
32
29
  - !ruby/object:Gem::Dependency
33
30
  name: activemodel
34
31
  requirement: !ruby/object:Gem::Requirement
35
- none: false
36
32
  requirements:
37
- - - ! '>'
33
+ - - ">"
38
34
  - !ruby/object:Gem::Version
39
35
  version: '3.2'
40
36
  type: :runtime
41
37
  prerelease: false
42
38
  version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
39
  requirements:
45
- - - ! '>'
40
+ - - ">"
46
41
  - !ruby/object:Gem::Version
47
42
  version: '3.2'
48
43
  - !ruby/object:Gem::Dependency
49
44
  name: equivalent-xml
50
45
  requirement: !ruby/object:Gem::Requirement
51
- none: false
52
46
  requirements:
53
- - - ! '>='
47
+ - - ">="
54
48
  - !ruby/object:Gem::Version
55
49
  version: '0'
56
50
  type: :runtime
57
51
  prerelease: false
58
52
  version_requirements: !ruby/object:Gem::Requirement
59
- none: false
60
53
  requirements:
61
- - - ! '>='
54
+ - - ">="
62
55
  - !ruby/object:Gem::Version
63
56
  version: '0'
64
57
  - !ruby/object:Gem::Dependency
65
58
  name: rdf
66
59
  requirement: !ruby/object:Gem::Requirement
67
- none: false
68
60
  requirements:
69
- - - ~>
61
+ - - "~>"
70
62
  - !ruby/object:Gem::Version
71
63
  version: '1.1'
72
64
  type: :runtime
73
65
  prerelease: false
74
66
  version_requirements: !ruby/object:Gem::Requirement
75
- none: false
76
67
  requirements:
77
- - - ~>
68
+ - - "~>"
78
69
  - !ruby/object:Gem::Version
79
70
  version: '1.1'
80
71
  - !ruby/object:Gem::Dependency
81
72
  name: rdf-rdfxml
82
73
  requirement: !ruby/object:Gem::Requirement
83
- none: false
84
74
  requirements:
85
- - - ! '>='
75
+ - - ">="
86
76
  - !ruby/object:Gem::Version
87
77
  version: '0'
88
78
  type: :runtime
89
79
  prerelease: false
90
80
  version_requirements: !ruby/object:Gem::Requirement
91
- none: false
92
81
  requirements:
93
- - - ! '>='
82
+ - - ">="
94
83
  - !ruby/object:Gem::Version
95
84
  version: '0'
96
85
  - !ruby/object:Gem::Dependency
97
86
  name: rdf-turtle
98
87
  requirement: !ruby/object:Gem::Requirement
99
- none: false
100
88
  requirements:
101
- - - ! '>='
89
+ - - ">="
102
90
  - !ruby/object:Gem::Version
103
91
  version: '0'
104
92
  type: :runtime
105
93
  prerelease: false
106
94
  version_requirements: !ruby/object:Gem::Requirement
107
- none: false
108
95
  requirements:
109
- - - ! '>='
96
+ - - ">="
110
97
  - !ruby/object:Gem::Version
111
98
  version: '0'
112
99
  - !ruby/object:Gem::Dependency
113
100
  name: rdf-json
114
101
  requirement: !ruby/object:Gem::Requirement
115
- none: false
116
102
  requirements:
117
- - - ! '>='
103
+ - - ">="
118
104
  - !ruby/object:Gem::Version
119
105
  version: '0'
120
106
  type: :runtime
121
107
  prerelease: false
122
108
  version_requirements: !ruby/object:Gem::Requirement
123
- none: false
124
109
  requirements:
125
- - - ! '>='
110
+ - - ">="
126
111
  - !ruby/object:Gem::Version
127
112
  version: '0'
128
113
  - !ruby/object:Gem::Dependency
129
114
  name: json-ld
130
115
  requirement: !ruby/object:Gem::Requirement
131
- none: false
132
116
  requirements:
133
- - - ~>
117
+ - - "~>"
134
118
  - !ruby/object:Gem::Version
135
119
  version: 0.9.1
136
120
  type: :runtime
137
121
  prerelease: false
138
122
  version_requirements: !ruby/object:Gem::Requirement
139
- none: false
140
123
  requirements:
141
- - - ~>
124
+ - - "~>"
142
125
  - !ruby/object:Gem::Version
143
126
  version: 0.9.1
144
127
  - !ruby/object:Gem::Dependency
145
128
  name: guid
146
129
  requirement: !ruby/object:Gem::Requirement
147
- none: false
148
130
  requirements:
149
- - - ! '>='
131
+ - - ">="
150
132
  - !ruby/object:Gem::Version
151
133
  version: '0'
152
134
  type: :runtime
153
135
  prerelease: false
154
136
  version_requirements: !ruby/object:Gem::Requirement
155
- none: false
156
137
  requirements:
157
- - - ! '>='
138
+ - - ">="
158
139
  - !ruby/object:Gem::Version
159
140
  version: '0'
160
141
  - !ruby/object:Gem::Dependency
161
142
  name: dalli
162
143
  requirement: !ruby/object:Gem::Requirement
163
- none: false
164
144
  requirements:
165
- - - ~>
145
+ - - "~>"
166
146
  - !ruby/object:Gem::Version
167
147
  version: '2.6'
168
148
  type: :runtime
169
149
  prerelease: false
170
150
  version_requirements: !ruby/object:Gem::Requirement
171
- none: false
172
151
  requirements:
173
- - - ~>
152
+ - - "~>"
174
153
  - !ruby/object:Gem::Version
175
154
  version: '2.6'
176
155
  description: RDF ruby ORM
@@ -180,9 +159,9 @@ executables: []
180
159
  extensions: []
181
160
  extra_rdoc_files: []
182
161
  files:
183
- - .autotest
184
- - .gitignore
185
- - .rspec
162
+ - ".autotest"
163
+ - ".gitignore"
164
+ - ".rspec"
186
165
  - Gemfile
187
166
  - LICENSE
188
167
  - README.md
@@ -248,27 +227,26 @@ files:
248
227
  - tripod.gemspec
249
228
  homepage: http://github.com/Swirrl/tripod
250
229
  licenses: []
230
+ metadata: {}
251
231
  post_install_message:
252
232
  rdoc_options: []
253
233
  require_paths:
254
234
  - lib
255
235
  required_ruby_version: !ruby/object:Gem::Requirement
256
- none: false
257
236
  requirements:
258
- - - ! '>='
237
+ - - ">="
259
238
  - !ruby/object:Gem::Version
260
239
  version: '0'
261
240
  required_rubygems_version: !ruby/object:Gem::Requirement
262
- none: false
263
241
  requirements:
264
- - - ! '>='
242
+ - - ">="
265
243
  - !ruby/object:Gem::Version
266
244
  version: 1.3.6
267
245
  requirements: []
268
246
  rubyforge_project: tripod
269
- rubygems_version: 1.8.23
247
+ rubygems_version: 2.2.0.rc.1
270
248
  signing_key:
271
- specification_version: 3
249
+ specification_version: 4
272
250
  summary: Active Model style RDF ORM
273
251
  test_files:
274
252
  - spec/app/models/person.rb