1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
eregon 2018-11-27 20:38:57 +00:00
parent 49cd16bfaf
commit 50441014ff
102 changed files with 771 additions and 426 deletions

View file

@ -43,6 +43,17 @@ describe "Integer#gcd" do
bignum.gcd(99).should == 99
end
it "doesn't cause an integer overflow" do
[2 ** (1.size * 8 - 2), 0x8000000000000000].each do |max|
[max - 1, max, max + 1].each do |num|
num.gcd(num).should == num
(-num).gcd(num).should == num
(-num).gcd(-num).should == num
num.gcd(-num).should == num
end
end
end
it "raises an ArgumentError if not given an argument" do
lambda { 12.gcd }.should raise_error(ArgumentError)
end