dm-parse 0.3.7 → 0.3.8
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.
- data/VERSION +1 -1
- data/dm-parse.gemspec +2 -2
- data/lib/adapters/parse_adapter.rb +15 -1
- data/spec/parse_adapter_spec.rb +16 -0
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.8
|
data/dm-parse.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "dm-parse"
|
8
|
-
s.version = "0.3.
|
8
|
+
s.version = "0.3.8"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Zhi-Qiang Lei"]
|
12
|
-
s.date = "2012-07-
|
12
|
+
s.date = "2012-07-05"
|
13
13
|
s.description = "An extension to make DataMapper working on Parse.com"
|
14
14
|
s.email = "zhiqiang.lei@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -36,6 +36,10 @@ module DataMapper
|
|
36
36
|
response = engine.read storage_name, params
|
37
37
|
|
38
38
|
response["results"]
|
39
|
+
rescue NotImplementedError
|
40
|
+
log :error, "Unsupported Query:"
|
41
|
+
log :error, " Model: #{model}"
|
42
|
+
log :error, " Conditions: #{query.conditions}"
|
39
43
|
end
|
40
44
|
|
41
45
|
# Read the "count" from Parse
|
@@ -165,7 +169,13 @@ module DataMapper
|
|
165
169
|
|
166
170
|
result = {}
|
167
171
|
translate(conditions, result)
|
168
|
-
finalize result
|
172
|
+
result_for_parse = finalize result
|
173
|
+
|
174
|
+
log :info, "Translating query on #{query.model}:"
|
175
|
+
log :info, " from: #{query.conditions}"
|
176
|
+
log :info, " to: #{result_for_parse.to_json}"
|
177
|
+
|
178
|
+
result_for_parse
|
169
179
|
end
|
170
180
|
|
171
181
|
def translate(condition, result)
|
@@ -272,6 +282,10 @@ module DataMapper
|
|
272
282
|
end
|
273
283
|
end
|
274
284
|
|
285
|
+
def log(level, message)
|
286
|
+
DataMapper.logger.send level, "[dm-parse][#{level}] #{message}"
|
287
|
+
end
|
288
|
+
|
275
289
|
end
|
276
290
|
|
277
291
|
const_added(:ParseAdapter)
|
data/spec/parse_adapter_spec.rb
CHANGED
@@ -20,7 +20,13 @@ describe DataMapper::Adapters::ParseAdapter do
|
|
20
20
|
|
21
21
|
context "when query assigns some exact values" do
|
22
22
|
let(:query) { model.all(:id => "z", :title => "x", :body => "y").query }
|
23
|
+
|
23
24
|
it { should eq("objectId" => "z", "title" => "x", "body" => "y") }
|
25
|
+
|
26
|
+
it "should log translation info" do
|
27
|
+
DataMapper.logger.should_receive(:info).with(an_instance_of(String)).exactly(3).times
|
28
|
+
adapter.send :parse_conditions_for, query
|
29
|
+
end
|
24
30
|
end
|
25
31
|
|
26
32
|
[:gt, :gte, :lt, :lte].each do |slug|
|
@@ -167,6 +173,7 @@ describe DataMapper::Adapters::ParseAdapter do
|
|
167
173
|
describe "#parse_params_for" do
|
168
174
|
subject { adapter.send :parse_params_for, query }
|
169
175
|
let(:query) { model.all.query }
|
176
|
+
|
170
177
|
it { should eq(:limit => 1000) }
|
171
178
|
|
172
179
|
context "when limit is given" do
|
@@ -190,4 +197,13 @@ describe DataMapper::Adapters::ParseAdapter do
|
|
190
197
|
end
|
191
198
|
end # #parse_params_for
|
192
199
|
|
200
|
+
describe "#read" do
|
201
|
+
let(:query) { model.all.query }
|
202
|
+
|
203
|
+
it "should log error" do
|
204
|
+
DataMapper.logger.should_receive(:error).with(an_instance_of(String)).exactly(3).times
|
205
|
+
adapter.stub(:parse_params_for) { raise NotImplementedError }
|
206
|
+
adapter.read query
|
207
|
+
end
|
208
|
+
end
|
193
209
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dm-parse
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-07-
|
12
|
+
date: 2012-07-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: dm-core
|
@@ -242,7 +242,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
242
242
|
version: '0'
|
243
243
|
segments:
|
244
244
|
- 0
|
245
|
-
hash:
|
245
|
+
hash: 3602608103859692141
|
246
246
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
247
247
|
none: false
|
248
248
|
requirements:
|