class JSchema::Validator::MultipleOf

Private Instance Methods

applicable_type() click to toggle source
# File lib/jschema/validator/multiple_of.rb, line 28
def applicable_type
  Numeric
end
post_initialize(multiple_of) click to toggle source
# File lib/jschema/validator/multiple_of.rb, line 16
def post_initialize(multiple_of)
  @multiple_of = BigDecimal.new(multiple_of.to_s)
end
validate_args(multiple_of) click to toggle source
# File lib/jschema/validator/multiple_of.rb, line 8
def validate_args(multiple_of)
  if number?(multiple_of) && multiple_of > 0
    true
  else
    invalid_schema('multipleOf', multiple_of)
  end
end
validate_instance(instance) click to toggle source
# File lib/jschema/validator/multiple_of.rb, line 20
def validate_instance(instance)
  number = BigDecimal.new(instance.to_s)
  div_remainder = number % @multiple_of
  unless div_remainder == 0
    "#{instance} must be a multiple of #{@multiple_of}"
  end
end