sinatra-param2 1.0.0
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 +7 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +77 -0
- data/LICENSE +19 -0
- data/README.md +190 -0
- data/Rakefile +18 -0
- data/build/reports/assets/0.10.1/application.css +799 -0
- data/build/reports/assets/0.10.1/application.js +1707 -0
- data/build/reports/assets/0.10.1/colorbox/border.png +0 -0
- data/build/reports/assets/0.10.1/colorbox/controls.png +0 -0
- data/build/reports/assets/0.10.1/colorbox/loading.gif +0 -0
- data/build/reports/assets/0.10.1/colorbox/loading_background.png +0 -0
- data/build/reports/assets/0.10.1/favicon_green.png +0 -0
- data/build/reports/assets/0.10.1/favicon_red.png +0 -0
- data/build/reports/assets/0.10.1/favicon_yellow.png +0 -0
- data/build/reports/assets/0.10.1/loading.gif +0 -0
- data/build/reports/assets/0.10.1/magnify.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/build/reports/assets/0.10.1/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/build/reports/coverage.xml +165 -0
- data/build/reports/index.html +1643 -0
- data/example/Gemfile +7 -0
- data/example/Gemfile.lock +33 -0
- data/example/Procfile +1 -0
- data/example/app.rb +52 -0
- data/example/config.ru +6 -0
- data/lib/sinatra/param.rb +245 -0
- data/lib/sinatra/param/version.rb +5 -0
- data/sinatra-param2.gemspec +27 -0
- data/spec/dummy/app.rb +346 -0
- data/spec/parameter_conjunctivity_spec.rb +34 -0
- data/spec/parameter_exclusivity_spec.rb +55 -0
- data/spec/parameter_inclusivity_spec.rb +30 -0
- data/spec/parameter_nested_validations_spec.rb +151 -0
- data/spec/parameter_raise_spec.rb +25 -0
- data/spec/parameter_spec.rb +19 -0
- data/spec/parameter_transformations_spec.rb +42 -0
- data/spec/parameter_type_coercion_spec.rb +211 -0
- data/spec/parameter_validations_spec.rb +247 -0
- data/spec/spec_helper.rb +29 -0
- metadata +190 -0
@@ -0,0 +1,247 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe 'Parameter Validations' do
|
4
|
+
describe 'required' do
|
5
|
+
it 'returns 400 on requests without required fields' do
|
6
|
+
get('/validation/required') do |response|
|
7
|
+
expect(response.status).to eq(400)
|
8
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter is required")
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
it 'returns 200 on requests when required field present' do
|
13
|
+
get('/validation/required', arg: 'foo') do |response|
|
14
|
+
expect(response.status).to eq(200)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe 'blank' do
|
20
|
+
it 'returns 400 on requests when string is blank' do
|
21
|
+
get('/validation/blank/string', arg: '') do |response|
|
22
|
+
expect(response.status).to eq(400)
|
23
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot be blank")
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'returns 400 on requests when array is blank' do
|
28
|
+
get('/validation/blank/array', arg: '') do |response|
|
29
|
+
expect(response.status).to eq(400)
|
30
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot be blank")
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'returns 400 on requests when hash is blank' do
|
35
|
+
get('/validation/blank/hash', arg: '') do |response|
|
36
|
+
expect(response.status).to eq(400)
|
37
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot be blank")
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'returns 400 on requests when hash is blank' do
|
42
|
+
get('/validation/blank/other', arg: '') do |response|
|
43
|
+
expect(response.status).to eq(400)
|
44
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot be blank")
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
it 'returns 200 on request when blank is true' do
|
49
|
+
get('/validation/nonblank/string', arg: '') do |response|
|
50
|
+
expect(response.status).to eq(200)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
describe 'format' do
|
56
|
+
it 'returns 200 on requests when value matches the param regex' do
|
57
|
+
get('/validation/format/hello', arg: 'hello world') do |response|
|
58
|
+
expect(response.status).to eq(200)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'returns 400 on requests when value does not match the param regex' do
|
63
|
+
get('/validation/format/hello', arg: 'world') do |response|
|
64
|
+
expect(response.status).to eq(400)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
it 'returns 400 on requests when value is not a string' do
|
69
|
+
get('/validation/format/9000', arg: 9000) do |response|
|
70
|
+
expect(response.status).to eq(400)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
describe 'is' do
|
76
|
+
it 'returns 400 on requests when value is other than defined' do
|
77
|
+
get('/validation/is', arg: 'bar') do |response|
|
78
|
+
expect(response.status).to eq(400)
|
79
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be foo")
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
it 'returns 200 on requests with a value is other than defined' do
|
84
|
+
get('/validation/is', arg: 'foo') do |response|
|
85
|
+
expect(response.status).to eq(200)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
describe 'in' do
|
91
|
+
it 'returns 400 on requests with a value not in the set' do
|
92
|
+
get('/validation/in', arg: 'MISC') do |response|
|
93
|
+
expect(response.status).to eq(400)
|
94
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be within [\"ASC\", \"DESC\"]")
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
it 'returns 200 on requests with a value in the set' do
|
99
|
+
get('/validation/in', arg: 'ASC') do |response|
|
100
|
+
expect(response.status).to eq(200)
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
describe 'for Arrays' do
|
105
|
+
it 'returns 400 on requests with any value not in the set' do
|
106
|
+
get('/validation/in/array', arg: 'MISC,ASC') do |response|
|
107
|
+
expect(response.status).to eq(400)
|
108
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be within [\"ASC\", \"DESC\"]")
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
it 'returns 200 on requests with all values in the set' do
|
113
|
+
get('/validation/in/array', arg: 'ASC,DESC') do |response|
|
114
|
+
expect(response.status).to eq(200)
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
describe 'within' do
|
121
|
+
it 'returns 400 on requests with a value outside the range' do
|
122
|
+
get('/validation/within', arg: 20) do |response|
|
123
|
+
expect(response.status).to eq(400)
|
124
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be within 1..10")
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
it 'returns 200 on requests with a value within the range' do
|
129
|
+
get('/validation/within', arg: 5) do |response|
|
130
|
+
expect(response.status).to eq(200)
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
describe 'for Arrays' do
|
135
|
+
it 'returns 400 on requests with any value outside the range' do
|
136
|
+
get('/validation/within/array', arg: [20,5]) do |response|
|
137
|
+
expect(response.status).to eq(400)
|
138
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be within 1..10")
|
139
|
+
end
|
140
|
+
end
|
141
|
+
|
142
|
+
it 'returns 200 on requests with all values within the range' do
|
143
|
+
get('/validation/within/array', arg: [5,10]) do |response|
|
144
|
+
expect(response.status).to eq(200)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
describe 'range' do
|
151
|
+
it 'returns 400 on requests with a value outside the range' do
|
152
|
+
get('/validation/range', arg: 20) do |response|
|
153
|
+
expect(response.status).to eq(400)
|
154
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be within 1..10")
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
it 'returns 200 on requests within the range' do
|
159
|
+
get('/validation/range', arg: 10) do |response|
|
160
|
+
expect(response.status).to eq(200)
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
describe 'for Arrays' do
|
165
|
+
it 'returns 400 on requests with any value outside the range' do
|
166
|
+
get('/validation/range/array', arg: [20,5]) do |response|
|
167
|
+
expect(response.status).to eq(400)
|
168
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter must be within 1..10")
|
169
|
+
end
|
170
|
+
end
|
171
|
+
|
172
|
+
it 'returns 200 on requests with all values within the range' do
|
173
|
+
get('/validation/range/array', arg: [5,10]) do |response|
|
174
|
+
expect(response.status).to eq(200)
|
175
|
+
end
|
176
|
+
end
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
180
|
+
describe 'min' do
|
181
|
+
it 'returns 400 on requests with a value smaller than min' do
|
182
|
+
get('/validation/min', arg: 5) do |response|
|
183
|
+
expect(response.status).to eq(400)
|
184
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot be less than 12")
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
188
|
+
it 'returns 200 on requests with a value larger than min' do
|
189
|
+
get('/validation/min', arg: 200) do |response|
|
190
|
+
expect(response.status).to eq(200)
|
191
|
+
end
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
describe 'max' do
|
196
|
+
it 'returns 400 on requests with a value larger than max' do
|
197
|
+
get('/validation/max', arg: 100) do |response|
|
198
|
+
expect(response.status).to eq(400)
|
199
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot be greater than 20")
|
200
|
+
end
|
201
|
+
end
|
202
|
+
|
203
|
+
it 'returns 200 on requests with a value smaller than max' do
|
204
|
+
get('/validation/max', arg: 2) do |response|
|
205
|
+
expect(response.status).to eq(200)
|
206
|
+
end
|
207
|
+
end
|
208
|
+
end
|
209
|
+
|
210
|
+
describe 'min_length' do
|
211
|
+
it 'returns 400 on requests with a string shorter than min_length' do
|
212
|
+
get('/validation/min_length', arg: 'hi') do |response|
|
213
|
+
expect(response.status).to eq(400)
|
214
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot have length less than 5")
|
215
|
+
end
|
216
|
+
end
|
217
|
+
|
218
|
+
it 'returns 200 on requests with a string longer than min_length' do
|
219
|
+
get('/validation/max_length', arg: 'longer') do |response|
|
220
|
+
expect(response.status).to eq(200)
|
221
|
+
end
|
222
|
+
end
|
223
|
+
end
|
224
|
+
|
225
|
+
describe 'max_length' do
|
226
|
+
it 'returns 400 on requests with a string longer than max_length' do
|
227
|
+
get('/validation/max_length', arg: 'reallylongstringlongerthanmax') do |response|
|
228
|
+
expect(response.status).to eq(400)
|
229
|
+
expect(JSON.parse(response.body)['message']).to eq("Parameter cannot have length greater than 10")
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
it 'returns 200 on requests with a string shorter than max_length' do
|
234
|
+
get('/validation/max_length', arg: 'short') do |response|
|
235
|
+
expect(response.status).to eq(200)
|
236
|
+
end
|
237
|
+
end
|
238
|
+
end
|
239
|
+
|
240
|
+
context 'custom message ' do
|
241
|
+
it 'returns a custom message when configured' do
|
242
|
+
get('/custommessage') do |response|
|
243
|
+
expect(JSON.parse(response.body)['message']).to eq("'a' must be less than 10")
|
244
|
+
end
|
245
|
+
end
|
246
|
+
end
|
247
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
unless ENV['CI']
|
2
|
+
require 'simplecov'
|
3
|
+
require 'simplecov-cobertura'
|
4
|
+
SimpleCov.start do
|
5
|
+
add_filter '/spec/'
|
6
|
+
add_filter '.bundle'
|
7
|
+
minimum_coverage(70)
|
8
|
+
coverage_dir "#{Dir.pwd}/build/reports"
|
9
|
+
SimpleCov.formatters = [
|
10
|
+
SimpleCov::Formatter::HTMLFormatter,
|
11
|
+
SimpleCov::Formatter::CoberturaFormatter
|
12
|
+
]
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
require 'sinatra/param'
|
19
|
+
|
20
|
+
require 'rspec'
|
21
|
+
require 'rack/test'
|
22
|
+
|
23
|
+
require 'dummy/app'
|
24
|
+
|
25
|
+
def app
|
26
|
+
App
|
27
|
+
end
|
28
|
+
|
29
|
+
include Rack::Test::Methods
|
metadata
ADDED
@@ -0,0 +1,190 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sinatra-param2
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Mattt Thompson
|
8
|
+
- Adrian Bravo
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2017-06-13 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: sinatra
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '2.0'
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - "~>"
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '2.0'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: rake
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - ">="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '0'
|
35
|
+
type: :development
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '0'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: rspec
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - ">="
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '0'
|
49
|
+
type: :development
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - ">="
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: rack-test
|
58
|
+
requirement: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
63
|
+
type: :development
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - ">="
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: simplecov
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - ">="
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - ">="
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '0'
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
name: simplecov-cobertura
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '0'
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - ">="
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '0'
|
98
|
+
description: sinatra-param2 allows you to declare, validate, and transform endpoint
|
99
|
+
parameters as you would in frameworks like ActiveModel or DataMapper.
|
100
|
+
email: adrianbn@gmail.com
|
101
|
+
executables: []
|
102
|
+
extensions: []
|
103
|
+
extra_rdoc_files: []
|
104
|
+
files:
|
105
|
+
- "./Gemfile"
|
106
|
+
- "./Gemfile.lock"
|
107
|
+
- "./LICENSE"
|
108
|
+
- "./README.md"
|
109
|
+
- "./Rakefile"
|
110
|
+
- "./build/reports/assets/0.10.1/application.css"
|
111
|
+
- "./build/reports/assets/0.10.1/application.js"
|
112
|
+
- "./build/reports/assets/0.10.1/colorbox/border.png"
|
113
|
+
- "./build/reports/assets/0.10.1/colorbox/controls.png"
|
114
|
+
- "./build/reports/assets/0.10.1/colorbox/loading.gif"
|
115
|
+
- "./build/reports/assets/0.10.1/colorbox/loading_background.png"
|
116
|
+
- "./build/reports/assets/0.10.1/favicon_green.png"
|
117
|
+
- "./build/reports/assets/0.10.1/favicon_red.png"
|
118
|
+
- "./build/reports/assets/0.10.1/favicon_yellow.png"
|
119
|
+
- "./build/reports/assets/0.10.1/loading.gif"
|
120
|
+
- "./build/reports/assets/0.10.1/magnify.png"
|
121
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png"
|
122
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png"
|
123
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png"
|
124
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png"
|
125
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png"
|
126
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png"
|
127
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png"
|
128
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png"
|
129
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-icons_222222_256x240.png"
|
130
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-icons_2e83ff_256x240.png"
|
131
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-icons_454545_256x240.png"
|
132
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-icons_888888_256x240.png"
|
133
|
+
- "./build/reports/assets/0.10.1/smoothness/images/ui-icons_cd0a0a_256x240.png"
|
134
|
+
- "./build/reports/coverage.xml"
|
135
|
+
- "./build/reports/index.html"
|
136
|
+
- "./example/Gemfile"
|
137
|
+
- "./example/Gemfile.lock"
|
138
|
+
- "./example/Procfile"
|
139
|
+
- "./example/app.rb"
|
140
|
+
- "./example/config.ru"
|
141
|
+
- "./lib/sinatra/param.rb"
|
142
|
+
- "./lib/sinatra/param/version.rb"
|
143
|
+
- "./sinatra-param2.gemspec"
|
144
|
+
- spec/dummy/app.rb
|
145
|
+
- spec/parameter_conjunctivity_spec.rb
|
146
|
+
- spec/parameter_exclusivity_spec.rb
|
147
|
+
- spec/parameter_inclusivity_spec.rb
|
148
|
+
- spec/parameter_nested_validations_spec.rb
|
149
|
+
- spec/parameter_raise_spec.rb
|
150
|
+
- spec/parameter_spec.rb
|
151
|
+
- spec/parameter_transformations_spec.rb
|
152
|
+
- spec/parameter_type_coercion_spec.rb
|
153
|
+
- spec/parameter_validations_spec.rb
|
154
|
+
- spec/spec_helper.rb
|
155
|
+
homepage: https://github.com/adrianbn/sinatra-param2
|
156
|
+
licenses:
|
157
|
+
- MIT
|
158
|
+
metadata: {}
|
159
|
+
post_install_message:
|
160
|
+
rdoc_options: []
|
161
|
+
require_paths:
|
162
|
+
- lib
|
163
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - ">="
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0'
|
168
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
169
|
+
requirements:
|
170
|
+
- - ">="
|
171
|
+
- !ruby/object:Gem::Version
|
172
|
+
version: '0'
|
173
|
+
requirements: []
|
174
|
+
rubyforge_project:
|
175
|
+
rubygems_version: 2.5.1
|
176
|
+
signing_key:
|
177
|
+
specification_version: 4
|
178
|
+
summary: Parameter Validation & Type Coercion for Sinatra 2.
|
179
|
+
test_files:
|
180
|
+
- spec/dummy/app.rb
|
181
|
+
- spec/parameter_conjunctivity_spec.rb
|
182
|
+
- spec/parameter_exclusivity_spec.rb
|
183
|
+
- spec/parameter_inclusivity_spec.rb
|
184
|
+
- spec/parameter_nested_validations_spec.rb
|
185
|
+
- spec/parameter_raise_spec.rb
|
186
|
+
- spec/parameter_spec.rb
|
187
|
+
- spec/parameter_transformations_spec.rb
|
188
|
+
- spec/parameter_type_coercion_spec.rb
|
189
|
+
- spec/parameter_validations_spec.rb
|
190
|
+
- spec/spec_helper.rb
|