From 8cf397783c456b3ae76d03cd546fb4478dc85c83 Mon Sep 17 00:00:00 2001 From: gogotanaka Date: Sat, 6 Jun 2015 22:11:00 +0000 Subject: * Move test cases from test/ruby/test_complex.rb to test/test_cmath.rb git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/test_cmath.rb | 39 +++++++++++++++++++++++++++++++++++---- 1 file changed, 35 insertions(+), 4 deletions(-) (limited to 'test/test_cmath.rb') diff --git a/test/test_cmath.rb b/test/test_cmath.rb index 1e1824acfd..e911fcb9e7 100644 --- a/test/test_cmath.rb +++ b/test/test_cmath.rb @@ -3,14 +3,45 @@ require 'cmath' class TestCMath < Test::Unit::TestCase def test_sqrt - assert_equal CMath.sqrt(1.0.i), CMath.sqrt(1.i), '[ruby-core:31672]' + assert_equal CMath.sqrt(1i), CMath.sqrt(1.0i), '[ruby-core:31672]' + assert_in_delta 1.272019649514069+0.7861513777574233i, CMath.sqrt(1+2i) + assert_in_delta 3.0i, CMath.sqrt(-9) + assert_equal Complex(0,2), CMath.sqrt(-4.0) + assert_equal Complex(0,2), CMath.sqrt(-4) + assert_equal Complex(0,2), CMath.sqrt(Rational(-4)) + assert_equal Complex(0,3), CMath.sqrt(-9.0) + assert_equal Complex(0,3), CMath.sqrt(-9) + assert_equal Complex(0,3), CMath.sqrt(Rational(-9)) end - def test_acos - assert_in_delta CMath.acos(Complex(3, 4)), Complex(0.9368124611557199,-2.305509031243477) + def test_log + assert_in_delta 0.8047189562170503+1.1071487177940904i, CMath.log(1+2i) + assert_in_delta 0.7324867603589635+1.0077701926457874i, CMath.log(1+2i,3) + assert_in_delta Math::PI*1i , CMath.log(-1) + assert_in_delta 3.0 , CMath.log(8, 2) + assert_in_delta 1.092840647090816-0.42078724841586035i, CMath.log(-8, -2) + end + + def test_functions + assert_in_delta -1.1312043837568135+2.4717266720048188i , CMath.exp(1+2i) + assert_in_delta 3.165778513216168+1.959601041421606i , CMath.sin(1+2i) + assert_in_delta 2.0327230070196656-3.0518977991517997i , CMath.cos(1+2i) + assert_in_delta 0.033812826079896774+1.0147936161466338i, CMath.tan(1+2i) + assert_in_delta -0.4890562590412937+1.4031192506220405i , CMath.sinh(1+2i) + assert_in_delta -0.64214812471552+1.0686074213827783i , CMath.cosh(1+2i) + assert_in_delta 1.16673625724092-0.2434582011857252i , CMath.tanh(1+2i) + assert_in_delta 1.1609640474436813+1.5972779646881088i , CMath.log2(1+2i) + assert_in_delta 0.3494850021680094+0.480828578784234i , CMath.log10(1+2i) + assert_in_delta 0.4270785863924755+1.5285709194809978i , CMath.asin(1+2i) + assert_in_delta 1.1437177404024204-1.528570919480998i , CMath.acos(1+2i) + assert_in_delta 1.3389725222944935+0.4023594781085251i , CMath.atan(1+2i) + assert_in_delta 1.3389725222944935+0.4023594781085251i , CMath.atan2(1+2i,1) + assert_in_delta 1.4693517443681852+1.0634400235777521i , CMath.asinh(1+2i) + assert_in_delta 1.528570919480998+1.1437177404024204i , CMath.acosh(1+2i) + assert_in_delta 0.17328679513998635+1.1780972450961724i , CMath.atanh(1+2i) end def test_cbrt_returns_principal_value_of_cube_root - assert_equal CMath.cbrt(-8), (-8)**(1.0/3), '#3676' + assert_equal (-8)**(1.0/3), CMath.cbrt(-8), '#3676' end end -- cgit v1.2.3