mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
37 lines
810 B
Ruby
37 lines
810 B
Ruby
require_relative '../../spec_helper'
|
|
require_relative 'fixtures/classes'
|
|
|
|
describe "Numeric#real" do
|
|
before :each do
|
|
@numbers = [
|
|
20, # Integer
|
|
398.72, # Float
|
|
Rational(3, 4), # Rational
|
|
bignum_value, # Bignum
|
|
infinity_value,
|
|
nan_value
|
|
].map{ |n| [n, -n] }.flatten
|
|
end
|
|
|
|
it "returns self" do
|
|
@numbers.each do |number|
|
|
if number.to_f.nan?
|
|
number.real.nan?.should be_true
|
|
else
|
|
number.real.should == number
|
|
end
|
|
end
|
|
end
|
|
|
|
it "raises an ArgumentError if given any arguments" do
|
|
@numbers.each do |number|
|
|
-> { number.real(number) }.should raise_error(ArgumentError)
|
|
end
|
|
end
|
|
end
|
|
|
|
describe "Numeric#real?" do
|
|
it "returns true" do
|
|
NumericSpecs::Subclass.new.should.real?
|
|
end
|
|
end
|