summaryrefslogtreecommitdiff
path: root/spec/ruby/core/integer/abs_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/core/integer/abs_spec.rb')
-rw-r--r--spec/ruby/core/integer/abs_spec.rb18
1 files changed, 16 insertions, 2 deletions
diff --git a/spec/ruby/core/integer/abs_spec.rb b/spec/ruby/core/integer/abs_spec.rb
index c40356db12..768eebdce2 100644
--- a/spec/ruby/core/integer/abs_spec.rb
+++ b/spec/ruby/core/integer/abs_spec.rb
@@ -1,6 +1,20 @@
require_relative '../../spec_helper'
-require_relative 'shared/abs'
describe "Integer#abs" do
- it_behaves_like :integer_abs, :abs
+ context "fixnum" do
+ it "returns self's absolute fixnum value" do
+ { 0 => [0, -0, +0], 2 => [2, -2, +2], 100 => [100, -100, +100] }.each do |key, values|
+ values.each do |value|
+ value.abs.should == key
+ end
+ end
+ end
+ end
+
+ context "bignum" do
+ it "returns the absolute bignum value" do
+ bignum_value(39).abs.should == 18446744073709551655
+ (-bignum_value(18)).abs.should == 18446744073709551634
+ end
+ end
end