Fix test failures caused by #19851

The error message when asserting `greater_than: BigDecimal.new` will
give an error message based on how BigDecimal displays itself. Big
decimal appears to always use scientific notation. This might not be the
best error message for the general case, but the general case wouldn't
use big decimal for the validation. And if they do, they likely need
this level of precision.
This commit is contained in:
Sean Griffin 2015-10-20 17:49:47 -06:00
parent ed8bcd6934
commit 12df3391e3

@ -74,7 +74,7 @@ def test_validates_numericality_with_greater_than
def test_validates_numericality_with_greater_than_using_differing_numeric_types
Topic.validates_numericality_of :approved, greater_than: BigDecimal.new('97.18')
invalid!([-97.18, BigDecimal.new('97.18'), BigDecimal('-97.18')], 'must be greater than 97.18')
invalid!([-97.18, BigDecimal.new('97.18'), BigDecimal('-97.18')], 'must be greater than 0.9718E2')
valid!([97.18, 98, BigDecimal.new('98')]) # Notice the 97.18 as a float is greater than 97.18 as a BigDecimal due to floating point precision
end
@ -88,7 +88,7 @@ def test_validates_numericality_with_greater_than_or_equal
def test_validates_numericality_with_greater_than_or_equal_using_differing_numeric_types
Topic.validates_numericality_of :approved, greater_than_or_equal_to: BigDecimal.new('97.18')
invalid!([-97.18, 97.17, 97, BigDecimal.new('97.17'), BigDecimal.new('-97.18')], 'must be greater than or equal to 97.18')
invalid!([-97.18, 97.17, 97, BigDecimal.new('97.17'), BigDecimal.new('-97.18')], 'must be greater than or equal to 0.9718E2')
valid!([97.18, 98, BigDecimal.new('97.19')])
end
@ -102,7 +102,7 @@ def test_validates_numericality_with_equal_to
def test_validates_numericality_with_equal_to_using_differing_numeric_types
Topic.validates_numericality_of :approved, equal_to: BigDecimal.new('97.18')
invalid!([-97.18, 97.18], 'must be equal to 97.18')
invalid!([-97.18, 97.18], 'must be equal to 0.9718E2')
valid!([BigDecimal.new('97.18')])
end
@ -116,7 +116,7 @@ def test_validates_numericality_with_less_than
def test_validates_numericality_with_less_than_using_differing_numeric_types
Topic.validates_numericality_of :approved, less_than: BigDecimal.new('97.18')
invalid!([97.18, BigDecimal.new('97.18')], 'must be less than 97.18')
invalid!([97.18, BigDecimal.new('97.18')], 'must be less than 0.9718E2')
valid!([-97.0, 97.0, -97, 97, BigDecimal.new('-97'), BigDecimal.new('97')])
end
@ -130,7 +130,7 @@ def test_validates_numericality_with_less_than_or_equal_to
def test_validates_numericality_with_less_than_or_equal_to_using_differing_numeric_types
Topic.validates_numericality_of :approved, less_than_or_equal_to: BigDecimal.new('97.18')
invalid!([97.18, 98], 'must be less than or equal to 97.18')
invalid!([97.18, 98], 'must be less than or equal to 0.9718E2')
valid!([-97.18, BigDecimal.new('-97.18'), BigDecimal.new('97.18')])
end