diff options
Diffstat (limited to 'test/bigdecimal')
-rw-r--r-- | test/bigdecimal/test_bigdecimal.rb | 11 | ||||
-rw-r--r-- | test/bigdecimal/test_bigmath.rb | 4 | ||||
-rw-r--r-- | test/bigdecimal/testbase.rb | 20 |
3 files changed, 24 insertions, 11 deletions
diff --git a/test/bigdecimal/test_bigdecimal.rb b/test/bigdecimal/test_bigdecimal.rb index 9d21588a95..536ec4874c 100644 --- a/test/bigdecimal/test_bigdecimal.rb +++ b/test/bigdecimal/test_bigdecimal.rb @@ -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) diff --git a/test/bigdecimal/test_bigmath.rb b/test/bigdecimal/test_bigmath.rb index 2870664bcf..fbeb06221b 100644 --- a/test/bigdecimal/test_bigmath.rb +++ b/test/bigdecimal/test_bigmath.rb @@ -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") diff --git a/test/bigdecimal/testbase.rb b/test/bigdecimal/testbase.rb new file mode 100644 index 0000000000..275b1b2b5d --- /dev/null +++ b/test/bigdecimal/testbase.rb @@ -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 |