未验证 提交 a5922f13 编写于 作者: S Sean Griffin 提交者: GitHub

Merge pull request #31452 from yahonda/deprecated_bigdecimal_new_activemodel

Suppress `warning: BigDecimal.new is deprecated` in Active Model
......@@ -33,7 +33,7 @@ class GrandchildModelForAttributesTest < ChildModelForAttributesTest
assert_equal 2, data.integer_field
assert_equal "Rails FTW", data.string_field
assert_equal BigDecimal.new("12.3"), data.decimal_field
assert_equal BigDecimal("12.3"), data.decimal_field
assert_equal "default string", data.string_with_default
assert_equal Date.new(2016, 1, 1), data.date_field
assert_equal false, data.boolean_field
......
......@@ -7,22 +7,22 @@ module Type
class DecimalTest < ActiveModel::TestCase
def test_type_cast_decimal
type = Decimal.new
assert_equal BigDecimal.new("0"), type.cast(BigDecimal.new("0"))
assert_equal BigDecimal.new("123"), type.cast(123.0)
assert_equal BigDecimal.new("1"), type.cast(:"1")
assert_equal BigDecimal("0"), type.cast(BigDecimal("0"))
assert_equal BigDecimal("123"), type.cast(123.0)
assert_equal BigDecimal("1"), type.cast(:"1")
end
def test_type_cast_decimal_from_invalid_string
type = Decimal.new
assert_nil type.cast("")
assert_equal BigDecimal.new("1"), type.cast("1ignore")
assert_equal BigDecimal.new("0"), type.cast("bad1")
assert_equal BigDecimal.new("0"), type.cast("bad")
assert_equal BigDecimal("1"), type.cast("1ignore")
assert_equal BigDecimal("0"), type.cast("bad1")
assert_equal BigDecimal("0"), type.cast("bad")
end
def test_type_cast_decimal_from_float_with_large_precision
type = Decimal.new(precision: ::Float::DIG + 2)
assert_equal BigDecimal.new("123.0"), type.cast(123.0)
assert_equal BigDecimal("123.0"), type.cast(123.0)
end
def test_type_cast_from_float_with_unspecified_precision
......@@ -48,7 +48,7 @@ def test_type_cast_decimal_from_rational_without_precision_defaults_to_18_36
def test_type_cast_decimal_from_object_responding_to_d
value = Object.new
def value.to_d
BigDecimal.new("1")
BigDecimal("1")
end
type = Decimal.new
assert_equal BigDecimal("1"), type.cast(value)
......
......@@ -20,7 +20,7 @@ def teardown
INTEGER_STRINGS = %w(0 +0 -0 10 +10 -10 0090 -090)
FLOATS = [0.0, 10.0, 10.5, -10.5, -0.0001] + FLOAT_STRINGS
INTEGERS = [0, 10, -10] + INTEGER_STRINGS
BIGDECIMAL = BIGDECIMAL_STRINGS.collect! { |bd| BigDecimal.new(bd) }
BIGDECIMAL = BIGDECIMAL_STRINGS.collect! { |bd| BigDecimal(bd) }
JUNK = ["not a number", "42 not a number", "0xdeadbeef", "0xinvalidhex", "0Xdeadbeef", "00-1", "--3", "+-3", "+3-1", "-+019.0", "12.12.13.12", "123\nnot a number"]
INFINITY = [1.0 / 0.0]
......@@ -81,10 +81,10 @@ def test_validates_numericality_with_greater_than
end
def test_validates_numericality_with_greater_than_using_differing_numeric_types
Topic.validates_numericality_of :approved, greater_than: BigDecimal.new("97.18")
Topic.validates_numericality_of :approved, greater_than: BigDecimal("97.18")
invalid!([-97.18, BigDecimal.new("97.18"), BigDecimal("-97.18")], "must be greater than 97.18")
valid!([97.19, 98, BigDecimal.new("98"), BigDecimal.new("97.19")])
invalid!([-97.18, BigDecimal("97.18"), BigDecimal("-97.18")], "must be greater than 97.18")
valid!([97.19, 98, BigDecimal("98"), BigDecimal("97.19")])
end
def test_validates_numericality_with_greater_than_using_string_value
......@@ -102,10 +102,10 @@ def test_validates_numericality_with_greater_than_or_equal
end
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")
Topic.validates_numericality_of :approved, greater_than_or_equal_to: BigDecimal("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")
valid!([97.18, 98, BigDecimal.new("97.19")])
invalid!([-97.18, 97.17, 97, BigDecimal("97.17"), BigDecimal("-97.18")], "must be greater than or equal to 97.18")
valid!([97.18, 98, BigDecimal("97.19")])
end
def test_validates_numericality_with_greater_than_or_equal_using_string_value
......@@ -123,10 +123,10 @@ def test_validates_numericality_with_equal_to
end
def test_validates_numericality_with_equal_to_using_differing_numeric_types
Topic.validates_numericality_of :approved, equal_to: BigDecimal.new("97.18")
Topic.validates_numericality_of :approved, equal_to: BigDecimal("97.18")
invalid!([-97.18], "must be equal to 97.18")
valid!([BigDecimal.new("97.18")])
valid!([BigDecimal("97.18")])
end
def test_validates_numericality_with_equal_to_using_string_value
......@@ -144,10 +144,10 @@ def test_validates_numericality_with_less_than
end
def test_validates_numericality_with_less_than_using_differing_numeric_types
Topic.validates_numericality_of :approved, less_than: BigDecimal.new("97.18")
Topic.validates_numericality_of :approved, less_than: BigDecimal("97.18")
invalid!([97.18, BigDecimal.new("97.18")], "must be less than 97.18")
valid!([-97.0, 97.0, -97, 97, BigDecimal.new("-97"), BigDecimal.new("97")])
invalid!([97.18, BigDecimal("97.18")], "must be less than 97.18")
valid!([-97.0, 97.0, -97, 97, BigDecimal("-97"), BigDecimal("97")])
end
def test_validates_numericality_with_less_than_using_string_value
......@@ -165,10 +165,10 @@ def test_validates_numericality_with_less_than_or_equal_to
end
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")
Topic.validates_numericality_of :approved, less_than_or_equal_to: BigDecimal("97.18")
invalid!([97.19, 98], "must be less than or equal to 97.18")
valid!([-97.18, BigDecimal.new("-97.18"), BigDecimal.new("97.18")])
valid!([-97.18, BigDecimal("-97.18"), BigDecimal("97.18")])
end
def test_validates_numericality_with_less_than_or_equal_using_string_value
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册