pliny 0.27.0 → 0.27.1
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/pliny/db_support.rb +1 -0
- data/lib/pliny/helpers/params.rb +12 -1
- data/lib/pliny/version.rb +1 -1
- data/spec/helpers/params_spec.rb +12 -3
- metadata +21 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a4f293533ee05722c6e85a425dd35414c8bf88e8055371a6b4208486334c6063
|
4
|
+
data.tar.gz: 10c679736c876907897d054ef84053dd1b7fb48b75cf7b364557dfc7e0e644c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bbe4f48bb7a51e5709684dc8a2261a7286a146b9a58d2326e87f6cf581d2850a1de1f09ad8f469537b1cc7ed19807521ee7e01e0d8244994b83f37a5095fc175
|
7
|
+
data.tar.gz: 9c1360812d50eb5832de40ca3fe3c569e204794397157d985da0fa0c353a16ffece435b158a7073a01627dd263a8932d1be0ccf32961d24bf7574cacaa946b52
|
data/lib/pliny/db_support.rb
CHANGED
data/lib/pliny/helpers/params.rb
CHANGED
@@ -21,10 +21,21 @@ module Pliny::Helpers
|
|
21
21
|
def load_params(data)
|
22
22
|
# Sinatra 1.x only supports the method. Sinatra 2.x only supports the class
|
23
23
|
if defined?(Sinatra::IndifferentHash)
|
24
|
-
|
24
|
+
indifferent_params_v2(data)
|
25
25
|
else
|
26
26
|
indifferent_params(data)
|
27
27
|
end
|
28
28
|
end
|
29
|
+
|
30
|
+
def indifferent_params_v2(data)
|
31
|
+
case data
|
32
|
+
when Hash
|
33
|
+
Sinatra::IndifferentHash[data]
|
34
|
+
when Array
|
35
|
+
data.map { |item| indifferent_params_v2(item) }
|
36
|
+
else
|
37
|
+
data
|
38
|
+
end
|
39
|
+
end
|
29
40
|
end
|
30
41
|
end
|
data/lib/pliny/version.rb
CHANGED
data/spec/helpers/params_spec.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
3
|
describe Pliny::Helpers::Params do
|
4
|
-
|
5
4
|
def app
|
6
5
|
Sinatra.new do
|
7
6
|
helpers Pliny::Helpers::Params
|
@@ -12,17 +11,27 @@ describe Pliny::Helpers::Params do
|
|
12
11
|
end
|
13
12
|
|
14
13
|
it "loads json params" do
|
15
|
-
post "/", {hello: "world"}.to_json, {
|
14
|
+
post "/", {hello: "world"}.to_json, {"CONTENT_TYPE" => "application/json"}
|
16
15
|
assert_equal "{\"hello\":\"world\"}", last_response.body
|
17
16
|
end
|
18
17
|
|
18
|
+
it "loads json array of params" do
|
19
|
+
post "/", [{hello: "world"}, {goodbye: "moon"}].to_json, {"CONTENT_TYPE" => "application/json"}
|
20
|
+
assert_equal "[{\"hello\":\"world\"},{\"goodbye\":\"moon\"}]", last_response.body
|
21
|
+
end
|
22
|
+
|
23
|
+
it "loads json array of arrays of params" do
|
24
|
+
post "/", [[{hello: "world"}], [{goodbye: "moon"}]].to_json, {"CONTENT_TYPE" => "application/json"}
|
25
|
+
assert_equal "[[{\"hello\":\"world\"}],[{\"goodbye\":\"moon\"}]]", last_response.body
|
26
|
+
end
|
27
|
+
|
19
28
|
it "loads form data params" do
|
20
29
|
post "/", {hello: "world"}
|
21
30
|
assert_equal "{\"hello\":\"world\"}", last_response.body
|
22
31
|
end
|
23
32
|
|
24
33
|
it "loads from an unknown content type" do
|
25
|
-
post "/", "<hello>world</hello>", {
|
34
|
+
post "/", "<hello>world</hello>", {"CONTENT_TYPE" => "application/xml"}
|
26
35
|
assert_equal "{}", last_response.body
|
27
36
|
end
|
28
37
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pliny
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.27.
|
4
|
+
version: 0.27.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brandur Leach
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2020-01-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
@@ -195,22 +195,22 @@ dependencies:
|
|
195
195
|
name: rspec
|
196
196
|
requirement: !ruby/object:Gem::Requirement
|
197
197
|
requirements:
|
198
|
-
- - "~>"
|
199
|
-
- !ruby/object:Gem::Version
|
200
|
-
version: '3.1'
|
201
198
|
- - ">="
|
202
199
|
- !ruby/object:Gem::Version
|
203
200
|
version: 3.1.0
|
201
|
+
- - "~>"
|
202
|
+
- !ruby/object:Gem::Version
|
203
|
+
version: '3.1'
|
204
204
|
type: :development
|
205
205
|
prerelease: false
|
206
206
|
version_requirements: !ruby/object:Gem::Requirement
|
207
207
|
requirements:
|
208
|
-
- - "~>"
|
209
|
-
- !ruby/object:Gem::Version
|
210
|
-
version: '3.1'
|
211
208
|
- - ">="
|
212
209
|
- !ruby/object:Gem::Version
|
213
210
|
version: 3.1.0
|
211
|
+
- - "~>"
|
212
|
+
- !ruby/object:Gem::Version
|
213
|
+
version: '3.1'
|
214
214
|
- !ruby/object:Gem::Dependency
|
215
215
|
name: sinatra-contrib
|
216
216
|
requirement: !ruby/object:Gem::Requirement
|
@@ -303,42 +303,42 @@ dependencies:
|
|
303
303
|
name: rollbar
|
304
304
|
requirement: !ruby/object:Gem::Requirement
|
305
305
|
requirements:
|
306
|
-
- - "~>"
|
307
|
-
- !ruby/object:Gem::Version
|
308
|
-
version: '2.11'
|
309
306
|
- - ">="
|
310
307
|
- !ruby/object:Gem::Version
|
311
308
|
version: 2.11.0
|
309
|
+
- - "~>"
|
310
|
+
- !ruby/object:Gem::Version
|
311
|
+
version: '2.11'
|
312
312
|
type: :development
|
313
313
|
prerelease: false
|
314
314
|
version_requirements: !ruby/object:Gem::Requirement
|
315
315
|
requirements:
|
316
|
-
- - "~>"
|
317
|
-
- !ruby/object:Gem::Version
|
318
|
-
version: '2.11'
|
319
316
|
- - ">="
|
320
317
|
- !ruby/object:Gem::Version
|
321
318
|
version: 2.11.0
|
319
|
+
- - "~>"
|
320
|
+
- !ruby/object:Gem::Version
|
321
|
+
version: '2.11'
|
322
322
|
- !ruby/object:Gem::Dependency
|
323
323
|
name: sequel
|
324
324
|
requirement: !ruby/object:Gem::Requirement
|
325
325
|
requirements:
|
326
|
-
- - "~>"
|
327
|
-
- !ruby/object:Gem::Version
|
328
|
-
version: '4.9'
|
329
326
|
- - ">="
|
330
327
|
- !ruby/object:Gem::Version
|
331
328
|
version: 4.9.0
|
329
|
+
- - "~>"
|
330
|
+
- !ruby/object:Gem::Version
|
331
|
+
version: '4.9'
|
332
332
|
type: :development
|
333
333
|
prerelease: false
|
334
334
|
version_requirements: !ruby/object:Gem::Requirement
|
335
335
|
requirements:
|
336
|
-
- - "~>"
|
337
|
-
- !ruby/object:Gem::Version
|
338
|
-
version: '4.9'
|
339
336
|
- - ">="
|
340
337
|
- !ruby/object:Gem::Version
|
341
338
|
version: 4.9.0
|
339
|
+
- - "~>"
|
340
|
+
- !ruby/object:Gem::Version
|
341
|
+
version: '4.9'
|
342
342
|
- !ruby/object:Gem::Dependency
|
343
343
|
name: rubocop
|
344
344
|
requirement: !ruby/object:Gem::Requirement
|
@@ -530,8 +530,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
530
530
|
- !ruby/object:Gem::Version
|
531
531
|
version: '0'
|
532
532
|
requirements: []
|
533
|
-
|
534
|
-
rubygems_version: 2.7.4
|
533
|
+
rubygems_version: 3.0.6
|
535
534
|
signing_key:
|
536
535
|
specification_version: 4
|
537
536
|
summary: Basic tooling to support API apps in Sinatra
|