Import bigdecimal version 1.3.4.  The full commit log is here:

  https://github.com/ruby/bigdecimal/compare/v1.3.3...v1.3.4

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
mrkn 2017-12-24 06:22:41 +00:00
Родитель 9f68d0f591
Коммит ea68278fe3
3 изменённых файлов: 11 добавлений и 19 удалений

Просмотреть файл

@ -2602,7 +2602,7 @@ static Real *BigDecimal_new(int argc, VALUE *argv);
static VALUE
BigDecimal_s_new(int argc, VALUE *argv, VALUE self)
{
rb_warning("BigDecimal.new is deprecated");
rb_warning("BigDecimal.new is deprecated; use Kernel.BigDecimal method instead.");
return rb_call_super(argc, argv);
}
@ -2645,15 +2645,7 @@ BigDecimal_initialize_copy(VALUE self, VALUE other)
static VALUE
BigDecimal_clone(VALUE self)
{
rb_warning("BigDecimal#clone is deprecated.");
return rb_call_super(0, NULL);
}
static VALUE
BigDecimal_dup(VALUE self)
{
rb_warning("BigDecimal#dup is deprecated.");
return rb_call_super(0, NULL);
return self;
}
static Real *
@ -3449,7 +3441,7 @@ Init_bigdecimal(void)
rb_define_method(rb_cBigDecimal, "remainder", BigDecimal_remainder, 1);
rb_define_method(rb_cBigDecimal, "divmod", BigDecimal_divmod, 1);
rb_define_method(rb_cBigDecimal, "clone", BigDecimal_clone, 0);
rb_define_method(rb_cBigDecimal, "dup", BigDecimal_dup, 0);
rb_define_method(rb_cBigDecimal, "dup", BigDecimal_clone, 0);
rb_define_method(rb_cBigDecimal, "to_f", BigDecimal_to_f, 0);
rb_define_method(rb_cBigDecimal, "abs", BigDecimal_abs, 0);
rb_define_method(rb_cBigDecimal, "sqrt", BigDecimal_sqrt, 1);

Просмотреть файл

@ -1,6 +1,6 @@
# coding: utf-8
bigdecimal_version = '1.3.3'
bigdecimal_version = '1.3.4'
Gem::Specification.new do |s|
s.name = "bigdecimal"

Просмотреть файл

@ -2,8 +2,6 @@
require_relative "testbase"
require 'bigdecimal/math'
require 'thread'
class TestBigDecimal < Test::Unit::TestCase
include TestBigDecimalBase
@ -1777,25 +1775,27 @@ class TestBigDecimal < Test::Unit::TestCase
end
def test_clone
assert_warning(/BigDecimal#clone is deprecated/) do
BigDecimal(0).clone
assert_warning(/^$/) do
x = BigDecimal(0)
assert_same(x, x.clone)
end
end
def test_dup
assert_warning(/BigDecimal#dup is deprecated/) do
assert_warning(/^$/) do
[1, -1, 2**100, -2**100].each do |i|
x = BigDecimal(i)
assert_equal(x, x.dup)
assert_same(x, x.dup)
end
end
end
def test_dup_subclass
assert_warning(/BigDecimal#dup is deprecated/) do
assert_warning(/BigDecimal\.new is deprecated/) do
c = Class.new(BigDecimal)
x = c.new(1)
y = x.dup
assert_same(x, y)
assert_equal(1, y)
assert_kind_of(c, y)
end