module RuleValidations

Constants

DISCOUNT_TYPES

Public Instance Methods

boolean?(attribute) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 30
def boolean?(attribute)
  ["true", "false", true, false].include? attribute
end
check_discount_type(discount_type) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 8
def check_discount_type(discount_type)
  discount_type_error = "Allowed values 'percentage' or 'flat_rate'"
  raise ArgumentError, discount_type_error unless
  DISCOUNT_TYPES.include?(discount_type)
end
either_should_be_present(name, attr1, attr2) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 14
def either_should_be_present(name, attr1, attr2)
  raise "atleast fill out #{name}" if attr1.empty? && attr2.empty?
end
should_be_a_boolean(name, attribute) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 26
def should_be_a_boolean(name, attribute)
  raise "#{name} should be a boolean" if boolean?(attribute) == false
end
should_be_a_number(name, attribute) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 18
def should_be_a_number(name, attribute)
  raise "#{name} should be a number" if attribute.is_a?(Numeric) == false
end
should_be_more_than(name, attribute, number) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 22
def should_be_more_than(name, attribute, number)
  raise "#{name} should be >= #{number}" if attribute < number
end
should_be_present(name, attr) click to toggle source
# File lib/wunder/concerns/rule_validations.rb, line 4
def should_be_present(name, attr)
  raise "#{name}.capitalize should be present" if attr == "" || attr.nil?
end