mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* 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:
parent
6c29e97c72
commit
9803f4f55a
3 changed files with 24 additions and 11 deletions
|
@ -1,14 +1,7 @@
|
||||||
require "test/unit"
|
require_relative "testbase"
|
||||||
require "bigdecimal"
|
|
||||||
|
|
||||||
class TestBigDecimal < Test::Unit::TestCase
|
class TestBigDecimal < Test::Unit::TestCase
|
||||||
def setup
|
include TestBigDecimalBase
|
||||||
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 test_version
|
def test_version
|
||||||
assert_equal("1.0.1", BigDecimal.ver)
|
assert_equal("1.0.1", BigDecimal.ver)
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
require "test/unit"
|
require_relative "testbase"
|
||||||
require "bigdecimal"
|
|
||||||
require "bigdecimal/math"
|
require "bigdecimal/math"
|
||||||
|
|
||||||
class TestBigMath < Test::Unit::TestCase
|
class TestBigMath < Test::Unit::TestCase
|
||||||
|
include TestBigDecimalBase
|
||||||
include BigMath
|
include BigMath
|
||||||
N = 20
|
N = 20
|
||||||
PINF = BigDecimal("+Infinity")
|
PINF = BigDecimal("+Infinity")
|
||||||
|
|
20
test/bigdecimal/testbase.rb
Normal file
20
test/bigdecimal/testbase.rb
Normal file
|
@ -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
|
Loading…
Add table
Add a link
Reference in a new issue