Sha256: 32b35489e75a36252e221c4c1dee4b923537ab12526e0b4c8a0a251005e8a3df

Contents?: true

Size: 1.46 KB

Versions: 3

Compression:

Stored size: 1.46 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__),'helper.rb'))

class TestFloat < Test::Unit::TestCase

  def setup
    initialize_context
  end

  def test_sign
    assert_equal -1, Float.context.sign(-1.0)
    assert_equal -1, Float.context.sign(-100.0)
    assert_equal -1, Float.context.sign(-0.0)
    assert_equal -1, Float.context.sign(-Float::MIN)
    assert_equal -1, Float.context.sign(-Float::MAX)
    assert_equal -1, Float.context.sign(-Float::EPSILON)
    assert_equal -1, Float.context.sign(-Float::INFINITY)

    assert_equal +1, Float.context.sign(+1.0)
    assert_equal +1, Float.context.sign(+100.0)
    assert_equal +1, Float.context.sign(+0.0)
    assert_equal +1, Float.context.sign(Float::MIN)
    assert_equal +1, Float.context.sign(Float::MAX)
    assert_equal +1, Float.context.sign(Float::EPSILON)
    assert_equal +1, Float.context.sign(Float::INFINITY)

    assert_nil Float.context.sign(Float.context.nan)
  end

  def copy_sign
    assert_equal -1.23, BigDecimal.context.copy_sign(1.23, -1)
    assert_equal -1.23, BigDecimal.context.copy_sign(1.23, -10.0)
    assert_equal -1.23, BigDecimal.context.copy_sign(-1.23, -1)
    assert_equal -1.23, BigDecimal.context.copy_sign(-1.23, -10.0)
    assert_equal 1.23, BigDecimal.context.copy_sign(-1.23, +1)
    assert_equal 1.23, BigDecimal.context.copy_sign(-1.23, 10.0)
    assert_equal 1.23, BigDecimal.context.copy_sign(1.23, +1)
    assert_equal 1.23, BigDecimal.context.copy_sign(1.23, 10.0)
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
flt-1.5.0 test/test_float.rb
flt-1.4.7 test/test_float.rb
flt-1.4.6 test/test_float.rb