summaryrefslogtreecommitdiff
path: root/test/ruby/test_rational.rb
diff options
context:
space:
mode:
authortadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-11-22 22:32:57 +0000
committertadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-11-22 22:32:57 +0000
commitbacd54785856a7d7a7dd3ea995b9aa6f9c56a3da (patch)
treec5d35d1ba371f05023239521d315a7fa176d7a04 /test/ruby/test_rational.rb
parent1d8ca7a237825a4d606e08ff3544aa6a8489f6f9 (diff)
added some tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_rational.rb')
-rw-r--r--test/ruby/test_rational.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/ruby/test_rational.rb b/test/ruby/test_rational.rb
index cf88617990..8b992350ab 100644
--- a/test/ruby/test_rational.rb
+++ b/test/ruby/test_rational.rb
@@ -723,6 +723,26 @@ class Rational_Test < Test::Unit::TestCase
assert_equal([Rational(2),Rational(1)], Rational(1).coerce(Rational(2)))
end
+ class ObjectX
+ def + (x) Rational(1) end
+ alias - +
+ alias * +
+ alias / +
+ alias quo +
+ alias div +
+ alias % +
+ alias remainder +
+ alias ** +
+ def coerce(x) [x, Rational(1)] end
+ end
+
+ def test_coerce2
+ x = ObjectX.new
+ %w(+ - * / quo div % remainder **).each do |op|
+ assert_kind_of(Numeric, Rational(1).__send__(op, x))
+ end
+ end
+
def test_unify
if @unify
assert_instance_of(Fixnum, Rational(1,2) + Rational(1,2))