actionizer 0.13.1 → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -3
- data/lib/actionizer/inputs.rb +12 -4
- data/lib/actionizer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d3ecc14e427eeabad9fe943e6851862f5eba03b5
|
4
|
+
data.tar.gz: 5a7743d7834a23d01a09becae45a16454f5c3dba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7558cd11e7a5d4c263e1d39284cac1311968e8c95d779eafda3997c1089ee17664fc316c4247d402f3a2ac428ecfa3555bf53fc7e18df7fe0b2887e121dc00c2
|
7
|
+
data.tar.gz: bf25a288061d5f91661252515c21b24f4f6848f90bdbf2709d73e1300794cf8211f5bd03d02cd87284e57e6de16984a00feb86dc2d8372446e00fbf74c83ca65
|
data/.rubocop.yml
CHANGED
@@ -12,13 +12,13 @@ Lint/InheritException:
|
|
12
12
|
Metrics/AbcSize:
|
13
13
|
Max: 32
|
14
14
|
Metrics/CyclomaticComplexity:
|
15
|
-
Max:
|
15
|
+
Max: 12
|
16
16
|
Metrics/PerceivedComplexity:
|
17
|
-
Max:
|
17
|
+
Max: 12
|
18
18
|
Metrics/LineLength:
|
19
19
|
Max: 120
|
20
20
|
Metrics/MethodLength:
|
21
|
-
Max:
|
21
|
+
Max: 25
|
22
22
|
|
23
23
|
Style/CommentedKeyword:
|
24
24
|
Enabled: false
|
data/lib/actionizer/inputs.rb
CHANGED
@@ -8,20 +8,28 @@ module Actionizer
|
|
8
8
|
|
9
9
|
def check_for_param_error(method_name, params = {})
|
10
10
|
# If no inputs_for was declared, don't do any checking
|
11
|
-
|
11
|
+
if !declared_params_by_method.key?(method_name)
|
12
|
+
return false
|
13
|
+
end
|
12
14
|
|
13
15
|
params.each_key do |param|
|
14
|
-
|
16
|
+
if !declared_params_by_method.fetch(method_name).include?(param)
|
17
|
+
return "Param #{param} not declared"
|
18
|
+
end
|
15
19
|
end
|
16
20
|
|
17
21
|
declared_params_by_method.fetch(method_name, {}).each_pair do |param, attrs|
|
18
|
-
|
22
|
+
if !attrs.fetch(:null) && params.key?(param) && params.fetch(param).nil?
|
23
|
+
return "Param #{param} can't be nil"
|
24
|
+
end
|
19
25
|
|
20
26
|
type = attrs.fetch(:type)
|
21
27
|
|
22
28
|
# Type check if param was required, or if optional and passed in
|
23
29
|
if attrs.fetch(:required) || params.include?(param)
|
24
|
-
|
30
|
+
if type && !(params[param].class <= type)
|
31
|
+
return "Param #{param} must descend from #{type}"
|
32
|
+
end
|
25
33
|
end
|
26
34
|
|
27
35
|
if attrs.fetch(:required) && !params.include?(param)
|
data/lib/actionizer/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Nichols
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-06-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|