зеркало из https://github.com/github/ruby.git
* test/bigdecimal/testbase.rb (teardown): should reset all modes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
6c29e97c72
Коммит
9803f4f55a
|
@ -1,14 +1,7 @@
|
|||
require "test/unit"
|
||||
require "bigdecimal"
|
||||
require_relative "testbase"
|
||||
|
||||
class TestBigDecimal < Test::Unit::TestCase
|
||||
def setup
|
||||
BigDecimal.mode(BigDecimal::EXCEPTION_ALL, true)
|
||||
BigDecimal.mode(BigDecimal::EXCEPTION_UNDERFLOW, true)
|
||||
BigDecimal.mode(BigDecimal::EXCEPTION_OVERFLOW, true)
|
||||
BigDecimal.mode(BigDecimal::ROUND_MODE, BigDecimal::ROUND_HALF_UP)
|
||||
BigDecimal.limit(0)
|
||||
end
|
||||
include TestBigDecimalBase
|
||||
|
||||
def test_version
|
||||
assert_equal("1.0.1", BigDecimal.ver)
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
require "test/unit"
|
||||
require "bigdecimal"
|
||||
require_relative "testbase"
|
||||
require "bigdecimal/math"
|
||||
|
||||
class TestBigMath < Test::Unit::TestCase
|
||||
include TestBigDecimalBase
|
||||
include BigMath
|
||||
N = 20
|
||||
PINF = BigDecimal("+Infinity")
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
require "test/unit"
|
||||
require "bigdecimal"
|
||||
|
||||
module TestBigDecimalBase
|
||||
def setup
|
||||
@mode = BigDecimal.mode(BigDecimal::EXCEPTION_ALL)
|
||||
BigDecimal.mode(BigDecimal::EXCEPTION_ALL, true)
|
||||
BigDecimal.mode(BigDecimal::EXCEPTION_UNDERFLOW, true)
|
||||
BigDecimal.mode(BigDecimal::EXCEPTION_OVERFLOW, true)
|
||||
BigDecimal.mode(BigDecimal::ROUND_MODE, BigDecimal::ROUND_HALF_UP)
|
||||
BigDecimal.limit(0)
|
||||
end
|
||||
|
||||
def teardown
|
||||
[BigDecimal::EXCEPTION_INFINITY, BigDecimal::EXCEPTION_NaN,
|
||||
BigDecimal::EXCEPTION_UNDERFLOW, BigDecimal::EXCEPTION_OVERFLOW].each do |mode|
|
||||
BigDecimal.mode(mode, !(@mode & mode).zero?)
|
||||
end
|
||||
end
|
||||
end
|
Загрузка…
Ссылка в новой задаче