Module: ShipEngine::Utils::Validate
- Defined in:
- lib/shipengine/utils/validate.rb
Class Method Summary collapse
- .array(field, value) ⇒ Object
- .array_of_str(field, value) ⇒ Object
- .bool(field, value) ⇒ Object
- .hash(field, value) ⇒ Object
- .int(field, value) ⇒ Object
- .non_empty_str(field, value) ⇒ Object
- .non_neg_int(field, value) ⇒ Object
- .non_whitespace_str(field, value) ⇒ Object
- .not_nil(field, value) ⇒ Object
- .not_nil_or_empty_str(field, value) ⇒ Object
- .number(field, value) ⇒ Object
- .positive_int(field, value) ⇒ Object
- .str(field, value) ⇒ Object
- .validate_input_address(address) ⇒ Object
Class Method Details
.array(field, value) ⇒ Object
85 86 87 88 89 90 91 |
# File 'lib/shipengine/utils/validate.rb', line 85 def array(field, value) not_nil(field, value) return if value.is_a?(Array) raise Exceptions.create_invalid_field_value_error("#{field} must be an Array.") end |
.array_of_str(field, value) ⇒ Object
93 94 95 96 97 98 99 100 |
# File 'lib/shipengine/utils/validate.rb', line 93 def array_of_str(field, value) array(field, value) value.each do |v| next if v.is_a?(String) raise Exceptions.create_invalid_field_value_error("#{field} must be an Array of Strings.") end end |
.bool(field, value) ⇒ Object
50 51 52 53 54 55 |
# File 'lib/shipengine/utils/validate.rb', line 50 def bool(field, value) not_nil(field, value) return if [true, false].include?(value) raise Exceptions.create_invalid_field_value_error("#{field} must be a Boolean.") end |
.hash(field, value) ⇒ Object
43 44 45 46 47 48 |
# File 'lib/shipengine/utils/validate.rb', line 43 def hash(field, value) not_nil(field, value) return if value.is_a?(Hash) raise Exceptions.create_invalid_field_value_error("#{field} must be Hash.") end |
.int(field, value) ⇒ Object
64 65 66 67 68 69 |
# File 'lib/shipengine/utils/validate.rb', line 64 def int(field, value) number(field, value) return if value.to_i == value raise Exceptions.create_invalid_field_value_error("#{field} must be a whole number.") end |
.non_empty_str(field, value) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/shipengine/utils/validate.rb', line 29 def non_empty_str(field, value) str(field, value) return unless value.empty? raise Exceptions.create_invalid_field_value_error("#{field} cannot be empty.") end |
.non_neg_int(field, value) ⇒ Object
71 72 73 74 75 76 |
# File 'lib/shipengine/utils/validate.rb', line 71 def non_neg_int(field, value) int(field, value) return if value >= 0 raise Exceptions.create_invalid_field_value_error("#{field} must be zero or greater.") end |
.non_whitespace_str(field, value) ⇒ Object
36 37 38 39 40 41 |
# File 'lib/shipengine/utils/validate.rb', line 36 def non_whitespace_str(field, value) str(field, value) return unless value.strip.empty? raise Exceptions.create_invalid_field_value_error("#{field} cannot be all whitespace.") end |
.not_nil(field, value) ⇒ Object
9 10 11 12 13 |
# File 'lib/shipengine/utils/validate.rb', line 9 def not_nil(field, value) return unless value.nil? raise Exceptions.create_required_error(field) end |
.not_nil_or_empty_str(field, value) ⇒ Object
15 16 17 18 19 20 |
# File 'lib/shipengine/utils/validate.rb', line 15 def not_nil_or_empty_str(field, value) not_nil(field, value) return unless value == '' raise Exceptions.create_required_error(field) end |
.number(field, value) ⇒ Object
57 58 59 60 61 62 |
# File 'lib/shipengine/utils/validate.rb', line 57 def number(field, value) not_nil(field, value) return if value.is_a?(Numeric) raise Exceptions.create_invalid_field_value_error("#{field} must be Numeric.") end |
.positive_int(field, value) ⇒ Object
78 79 80 81 82 83 |
# File 'lib/shipengine/utils/validate.rb', line 78 def positive_int(field, value) int(field, value) return if value.positive? raise Exceptions.create_invalid_field_value_error("#{field} must be greater than zero.") end |
.str(field, value) ⇒ Object
22 23 24 25 26 27 |
# File 'lib/shipengine/utils/validate.rb', line 22 def str(field, value) not_nil(field, value) return if value.is_a?(String) raise Exceptions.create_invalid_field_value_error("#{field} must be a String.") end |
.validate_input_address(address) ⇒ Object
102 |
# File 'lib/shipengine/utils/validate.rb', line 102 def validate_input_address(address); end |