summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDaniel Bovensiepen <[email protected]>2012-05-16 10:58:00 -0700
committerDaniel Bovensiepen <[email protected]>2012-05-16 10:58:00 -0700
commit5c6f04120aa414b2f1c5f21ef75f80fe7848b82c (patch)
tree54c883e103b1d1039b585fb9da814e03312b3b35
parentdacecdb93c0452bb0f9ce13b902eab9caf7f0ed4 (diff)
downloadmruby-5c6f04120aa414b2f1c5f21ef75f80fe7848b82c.tar.gz
mruby-5c6f04120aa414b2f1c5f21ef75f80fe7848b82c.zip
Add Math Test for new implementation
-rw-r--r--test/t/math.rb63
1 files changed, 63 insertions, 0 deletions
diff --git a/test/t/math.rb b/test/t/math.rb
new file mode 100644
index 000000000..533263be2
--- /dev/null
+++ b/test/t/math.rb
@@ -0,0 +1,63 @@
+##
+# Math Test
+
+assert('Math.erf 0') do
+ Math.erf(0) == 0
+end
+
+assert('Math.exp 0') do
+ Math.exp(0) == 1.0
+end
+
+assert('Math.exp 1') do
+ Math.exp(1) == 2.718281828459045
+end
+
+assert('Math.exp 1.5') do
+ Math.exp(1.5) == 4.4816890703380645
+end
+
+assert('Math.log 1') do
+ Math.log(1) == 0
+end
+
+assert('Math.log E') do
+ Math.log(Math::E) == 1.0
+end
+
+assert('Math.log E**3') do
+ Math.log(Math::E**3) == 3.0
+end
+
+assert('Math.log2 1') do
+ Math.log2(1) == 0.0
+end
+
+assert('Math.log2 2') do
+ Math.log2(2) == 1.0
+end
+
+assert('Math.log10 1') do
+ Math.log10(1) == 0.0
+end
+
+assert('Math.log10 10') do
+ Math.log10(10) == 1.0
+end
+
+assert('Math.log10 10**100') do
+ Math.log10(10**100) == 100.0
+end
+
+assert('Math.cbrt') do
+ a = [-8, -1, 0, 1, 8].map do |i|
+ Math.cbrt(i)
+ end
+
+ a == [-2.0, -1.0, 0.0, 1.0, 2.0]
+end
+
+assert('Math.hypot') do
+ Math.hypot(3, 4) == 5.0
+end
+