lib/apipie/validator.rb in apipie-rails-0.5.8 vs lib/apipie/validator.rb in apipie-rails-0.5.9

- old
+ new

@@ -396,10 +396,31 @@ def description nil end end + class DecimalValidator < BaseValidator + + def validate(value) + self.class.validate(value) + end + + def self.build(param_description, argument, options, block) + if argument == :decimal + self.new(param_description) + end + end + + def description + "Must be a decimal number." + end + + def self.validate(value) + value.to_s =~ /\A^[-+]?[0-9]+([,.][0-9]+)?\Z$/ + end + end + class NumberValidator < BaseValidator def validate(value) self.class.validate(value) end @@ -410,9 +431,13 @@ end end def description "Must be a number." + end + + def expected_type + 'numeric' end def self.validate(value) value.to_s =~ /\A(0|[1-9]\d*)\Z$/ end