##// END OF EJS Templates
Custom date field accepts invalid dates (#9394)....
Jean-Philippe Lang -
r7659:981a6223e40e
parent child
Show More
@@ -64,7 +64,7 protected
64 when 'float'
64 when 'float'
65 begin; Kernel.Float(value); rescue; errors.add(:value, :invalid) end
65 begin; Kernel.Float(value); rescue; errors.add(:value, :invalid) end
66 when 'date'
66 when 'date'
67 errors.add(:value, :not_a_date) unless value =~ /^\d{4}-\d{2}-\d{2}$/
67 errors.add(:value, :not_a_date) unless value =~ /^\d{4}-\d{2}-\d{2}$/ && begin; value.to_date; rescue; false end
68 when 'list'
68 when 'list'
69 errors.add(:value, :inclusion) unless custom_field.possible_values.include?(value)
69 errors.add(:value, :inclusion) unless custom_field.possible_values.include?(value)
70 end
70 end
@@ -64,6 +64,8 class CustomValueTest < ActiveSupport::TestCase
64 assert v.valid?
64 assert v.valid?
65 v.value = 'abc'
65 v.value = 'abc'
66 assert !v.valid?
66 assert !v.valid?
67 v.value = '1975-07-33'
68 assert !v.valid?
67 v.value = '1975-07-14'
69 v.value = '1975-07-14'
68 assert v.valid?
70 assert v.valid?
69 end
71 end
General Comments 0
You need to be logged in to leave comments. Login now