hash_params 2.0.6 → 2.0.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1746d140a8c733e9fa22b4d1c3550574b22fdc1c
4
- data.tar.gz: 41abd0148f922d1f84c5fafb6afe935dde603553
3
+ metadata.gz: a746bc3b0080ee8e7d2eb5bcd8cd48a19e99a49b
4
+ data.tar.gz: 5c3824b1a408b87ea3a1c953cfb7477b472352dc
5
5
  SHA512:
6
- metadata.gz: 407dcbcfa1059208c6600ead0aae2e5b67fd0d93762e7f2380d9ffbc1d8019a4a2965a379cfcb921d78fb1c81ae04ee0998cf427efa47ff6ca85ef219d646c45
7
- data.tar.gz: a13d6e4aef2b90c0c5e98099ba81c845fc43510c2977083d477ce63d3ec0404ac2b3956d7dfe059d852fac806d316b77cd53679ff23fd3f6cf29d0deeceb799b
6
+ metadata.gz: 9ab2d4d4389cc22ea7cf2e953f57c4c323c7f73095385fb499a5fe6a9326c3317494b8cbf14da9e643dff3504ca3900b5b90594a2770642ac87e993605a4b6e6
7
+ data.tar.gz: b6380ae8d1ac01cbff5ec913feb89d311e716cad8d349ae49cb71f9f927372f1d0aacddb8210513a631bf38bca3fea93e44478ddbb5d1b52cb0db24a4acfbb56
Binary file
@@ -8,7 +8,7 @@ require_relative 'hash_params/binding_validator'
8
8
 
9
9
  module HashParams
10
10
  ENVIRONMENT = ENV['HASH_PARAMS_ENV'] || (defined?(Rails) && Rails.env) || ENV['RAILS_ENV'] || ENV['RACK_ENV'] || ENV['APP_ENV'] || 'development'
11
- VERSION = '2.0.6'
11
+ VERSION = '2.0.7'
12
12
  extend HashParams::Validator
13
13
  end
14
14
 
@@ -50,7 +50,7 @@ module HashParams
50
50
  if validations[:required] && param.nil?
51
51
  raise ValidationError.new('Required Parameter missing and has no default specified')
52
52
  end
53
-
53
+ errors = []
54
54
  error = nil
55
55
  validations.each do |key, value|
56
56
  error = case key
@@ -74,9 +74,14 @@ module HashParams
74
74
  else
75
75
  nil
76
76
  end
77
+ if error
78
+ error = validations[:errmsg] || error
79
+ errors << error
80
+ end
81
+
77
82
  end
78
- error = validations[:errmsg] || error
79
- raise ValidationError.new(error) if error
83
+
84
+ raise ValidationError.new(errors.join("\n")) unless errors.empty?
80
85
  param
81
86
  end
82
87
 
@@ -117,7 +122,7 @@ module HashParams
117
122
  return Time.parse(val) if type == Time
118
123
  return DateTime.parse(val) if type == DateTime
119
124
  return Array(val.split(opts[:delimiter] || ',')) if type == Array
120
- return Hash[val.gsub(/[{}]/, '').gsub('}', '').split(opts[:delimiter] || ',').map { |c| c.split(opts[:separator] ||':').map { |i| i.strip } }] if type == Hash
125
+ return Hash[val.gsub(/[{}]/, '').gsub('}', '').split(opts[:delimiter] || ',').map {|c| c.split(opts[:separator] ||':').map {|i| i.strip}}] if type == Hash
121
126
 
122
127
  raise CoercionError("Unable to coerce #{val} to #{type}")
123
128
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hash_params
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.6
4
+ version: 2.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Uckun
@@ -119,6 +119,7 @@ files:
119
119
  - "./coverage/assets/0.10.2/smoothness/images/ui-icons_cd0a0a_256x240.png"
120
120
  - "./coverage/index.html"
121
121
  - "./hash_params-2.0.5.gem"
122
+ - "./hash_params-2.0.6.gem"
122
123
  - "./hash_params.gemspec"
123
124
  - "./lib/hash_params.rb"
124
125
  - "./lib/hash_params/binding_validator.rb"