weasel_diesel 1.1.3 → 1.1.4
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/.travis.yml +4 -0
- data/Rakefile +3 -1
- data/lib/params_verification.rb +13 -10
- data/lib/weasel_diesel/version.rb +1 -1
- metadata +44 -13
data/.travis.yml
CHANGED
data/Rakefile
CHANGED
data/lib/params_verification.rb
CHANGED
@@ -106,14 +106,14 @@ module ParamsVerification
|
|
106
106
|
|
107
107
|
# Checks presence
|
108
108
|
if !(namespaced_params || params).keys.include?(param_name)
|
109
|
-
raise MissingParam, "'#{rule.name}' is missing - passed params: #{params.inspect}."
|
109
|
+
raise MissingParam, "'#{rule.name}' is missing - passed params: #{html_escape(params.inspect)}."
|
110
110
|
end
|
111
111
|
|
112
112
|
updated_param_value, updated_params = validate_and_cast_type(param_value, param_name, rule.options[:type], params, namespace)
|
113
113
|
|
114
114
|
# check for nulls in params that don't allow them
|
115
115
|
if !valid_null_param?(param_name, updated_param_value, rule)
|
116
|
-
raise InvalidParamValue, "Value for parameter '#{param_name}' cannot be null - passed params: #{updated_params.inspect}."
|
116
|
+
raise InvalidParamValue, "Value for parameter '#{param_name}' cannot be null - passed params: #{html_escape(updated_params.inspect)}."
|
117
117
|
elsif updated_param_value
|
118
118
|
value_errors = validate_ruled_param_value(param_name, updated_param_value, rule)
|
119
119
|
raise InvalidParamValue, value_errors.join(', ') if value_errors
|
@@ -138,7 +138,7 @@ module ParamsVerification
|
|
138
138
|
param_value, namespaced_params = extract_param_values(params, param_name, namespace)
|
139
139
|
|
140
140
|
if param_value && !valid_null_param?(param_name, param_value, rule)
|
141
|
-
raise InvalidParamValue, "Value for parameter '#{param_name}' cannot be null if passed - passed params: #{params.inspect}."
|
141
|
+
raise InvalidParamValue, "Value for parameter '#{param_name}' cannot be null if passed - passed params: #{html_escape(params.inspect)}."
|
142
142
|
end
|
143
143
|
|
144
144
|
# Use a default value if one is available and the submitted param value is nil
|
@@ -199,7 +199,7 @@ module ParamsVerification
|
|
199
199
|
choices = rule.options[:options] || rule.options[:in]
|
200
200
|
unless param_value.is_a?(Array) ? (param_value & choices == param_value) : choices.include?(param_value)
|
201
201
|
errors ||= []
|
202
|
-
errors << "Value for parameter '#{param_name}' (#{param_value}) is not in the allowed set of values."
|
202
|
+
errors << "Value for parameter '#{param_name}' (#{html_escape(param_value)}) is not in the allowed set of values."
|
203
203
|
end
|
204
204
|
end
|
205
205
|
|
@@ -208,7 +208,7 @@ module ParamsVerification
|
|
208
208
|
min = rule.options[:min_value]
|
209
209
|
if param_value.to_i < min
|
210
210
|
errors ||= []
|
211
|
-
errors << "Value for parameter '#{param_name}' ('#{param_value}') is lower than the min accepted value (#{min})."
|
211
|
+
errors << "Value for parameter '#{param_name}' ('#{html_escape(param_value)}') is lower than the min accepted value (#{min})."
|
212
212
|
end
|
213
213
|
end
|
214
214
|
|
@@ -217,7 +217,7 @@ module ParamsVerification
|
|
217
217
|
max = rule.options[:max_value]
|
218
218
|
if param_value.to_i > max
|
219
219
|
errors ||= []
|
220
|
-
errors << "Value for parameter '#{param_name}' ('#{param_value}') is higher than the max accepted value (#{max})."
|
220
|
+
errors << "Value for parameter '#{param_name}' ('#{html_escape(param_value)}') is higher than the max accepted value (#{max})."
|
221
221
|
end
|
222
222
|
end
|
223
223
|
|
@@ -226,7 +226,7 @@ module ParamsVerification
|
|
226
226
|
min = rule.options[:min_length]
|
227
227
|
if param_value.to_s.length < min
|
228
228
|
errors ||= []
|
229
|
-
errors << "Length of parameter '#{param_name}' ('#{param_value}') is shorter than the min accepted value (#{min})."
|
229
|
+
errors << "Length of parameter '#{param_name}' ('#{html_escape(param_value)}') is shorter than the min accepted value (#{min})."
|
230
230
|
end
|
231
231
|
end
|
232
232
|
|
@@ -235,7 +235,7 @@ module ParamsVerification
|
|
235
235
|
max = rule.options[:max_length]
|
236
236
|
if param_value.to_s.length > max
|
237
237
|
errors ||= []
|
238
|
-
errors << "Length of parameter '#{param_name}' ('#{param_value}') is longer than the max accepted value (#{max})."
|
238
|
+
errors << "Length of parameter '#{param_name}' ('#{html_escape(param_value)}') is longer than the max accepted value (#{max})."
|
239
239
|
end
|
240
240
|
end
|
241
241
|
|
@@ -324,7 +324,7 @@ module ParamsVerification
|
|
324
324
|
return if value == nil
|
325
325
|
validation = ParamsVerification.type_validations[expected_type.to_sym]
|
326
326
|
unless validation.nil? || value.to_s =~ validation
|
327
|
-
raise InvalidParamType, "Value for parameter '#{name}' (#{value}) is of the wrong type (expected #{expected_type})"
|
327
|
+
raise InvalidParamType, "Value for parameter '#{name}' (#{html_escape(value)}) is of the wrong type (expected #{expected_type})"
|
328
328
|
end
|
329
329
|
end
|
330
330
|
|
@@ -347,5 +347,8 @@ module ParamsVerification
|
|
347
347
|
true
|
348
348
|
end
|
349
349
|
|
350
|
-
|
350
|
+
def self.html_escape(msg)
|
351
|
+
ERB::Util.html_escape(msg)
|
352
|
+
end
|
353
|
+
|
351
354
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: weasel_diesel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-10-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: rack-test
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: '0'
|
33
38
|
type: :development
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: yard
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,10 +53,15 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :development
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: sinatra
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
67
|
- - ! '>='
|
@@ -54,10 +69,15 @@ dependencies:
|
|
54
69
|
version: '0'
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: rake
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,7 +85,12 @@ dependencies:
|
|
65
85
|
version: '0'
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
69
94
|
description: Ruby DSL describing Web Services without implementation details.
|
70
95
|
email:
|
71
96
|
- mattaimonetti@gmail.com
|
@@ -117,15 +142,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
117
142
|
- - ! '>='
|
118
143
|
- !ruby/object:Gem::Version
|
119
144
|
version: '0'
|
145
|
+
segments:
|
146
|
+
- 0
|
147
|
+
hash: 1819885945889786585
|
120
148
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
149
|
none: false
|
122
150
|
requirements:
|
123
151
|
- - ! '>='
|
124
152
|
- !ruby/object:Gem::Version
|
125
153
|
version: '0'
|
154
|
+
segments:
|
155
|
+
- 0
|
156
|
+
hash: 1819885945889786585
|
126
157
|
requirements: []
|
127
158
|
rubyforge_project: wsdsl
|
128
|
-
rubygems_version: 1.8.
|
159
|
+
rubygems_version: 1.8.24
|
129
160
|
signing_key:
|
130
161
|
specification_version: 3
|
131
162
|
summary: Web Service DSL
|