1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

merges most of r29882 from trunk into ruby_1_9_2.

--
added some tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@30263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
yugui 2010-12-20 13:22:56 +00:00
parent d341834304
commit 26879c1742
3 changed files with 38 additions and 1 deletions

View file

@ -517,6 +517,23 @@ class Complex_Test < Test::Unit::TestCase
assert_equal([Complex(2),Complex(1)], Complex(1).coerce(Complex(2)))
end
class ObjectX
def + (x) Rational(1) end
alias - +
alias * +
alias / +
alias quo +
alias ** +
def coerce(x) [x, Complex(1)] end
end
def test_coerce2
x = ObjectX.new
%w(+ - * / quo **).each do |op|
assert_kind_of(Numeric, Complex(1).__send__(op, x))
end
end
def test_unify
if @unify
assert_instance_of(Fixnum, Complex(1,2) + Complex(-1,-2))

View file

@ -718,6 +718,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))

View file

@ -1,5 +1,5 @@
#define RUBY_VERSION "1.9.2"
#define RUBY_PATCHLEVEL 103
#define RUBY_PATCHLEVEL 104
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 9
#define RUBY_VERSION_TEENY 1