mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Update to ruby/spec@875a09e
This commit is contained in:
parent
a06301b103
commit
5c276e1cc9
1247 changed files with 5316 additions and 5028 deletions
|
|
@ -33,7 +33,7 @@ describe "Float#/" do
|
|||
end
|
||||
|
||||
it "raises a TypeError when given a non-Numeric" do
|
||||
lambda { 13.0 / "10" }.should raise_error(TypeError)
|
||||
lambda { 13.0 / :symbol }.should raise_error(TypeError)
|
||||
-> { 13.0 / "10" }.should raise_error(TypeError)
|
||||
-> { 13.0 / :symbol }.should raise_error(TypeError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -18,22 +18,22 @@ describe "Float#divmod" do
|
|||
|
||||
# Behaviour established as correct in r23953
|
||||
it "raises a FloatDomainError if self is NaN" do
|
||||
lambda { nan_value.divmod(1) }.should raise_error(FloatDomainError)
|
||||
-> { nan_value.divmod(1) }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
# Behaviour established as correct in r23953
|
||||
it "raises a FloatDomainError if other is NaN" do
|
||||
lambda { 1.divmod(nan_value) }.should raise_error(FloatDomainError)
|
||||
-> { 1.divmod(nan_value) }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
# Behaviour established as correct in r23953
|
||||
it "raises a FloatDomainError if self is Infinity" do
|
||||
lambda { infinity_value.divmod(1) }.should raise_error(FloatDomainError)
|
||||
-> { infinity_value.divmod(1) }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
it "raises a ZeroDivisionError if other is zero" do
|
||||
lambda { 1.0.divmod(0) }.should raise_error(ZeroDivisionError)
|
||||
lambda { 1.0.divmod(0.0) }.should raise_error(ZeroDivisionError)
|
||||
-> { 1.0.divmod(0) }.should raise_error(ZeroDivisionError)
|
||||
-> { 1.0.divmod(0.0) }.should raise_error(ZeroDivisionError)
|
||||
end
|
||||
|
||||
# redmine #5276"
|
||||
|
|
|
|||
|
|
@ -6,13 +6,13 @@ describe "Float" do
|
|||
end
|
||||
|
||||
it ".allocate raises a TypeError" do
|
||||
lambda do
|
||||
-> do
|
||||
Float.allocate
|
||||
end.should raise_error(TypeError)
|
||||
end
|
||||
|
||||
it ".new is undefined" do
|
||||
lambda do
|
||||
-> do
|
||||
Float.new
|
||||
end.should raise_error(NoMethodError)
|
||||
end
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ describe "Float#>" do
|
|||
end
|
||||
|
||||
it "raises an ArgumentError when given a non-Numeric" do
|
||||
lambda { 5.0 > "4" }.should raise_error(ArgumentError)
|
||||
lambda { 5.0 > mock('x') }.should raise_error(ArgumentError)
|
||||
-> { 5.0 > "4" }.should raise_error(ArgumentError)
|
||||
-> { 5.0 > mock('x') }.should raise_error(ArgumentError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ describe "Float#>=" do
|
|||
end
|
||||
|
||||
it "raises an ArgumentError when given a non-Numeric" do
|
||||
lambda { 5.0 >= "4" }.should raise_error(ArgumentError)
|
||||
lambda { 5.0 >= mock('x') }.should raise_error(ArgumentError)
|
||||
-> { 5.0 >= "4" }.should raise_error(ArgumentError)
|
||||
-> { 5.0 >= mock('x') }.should raise_error(ArgumentError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ describe "Float#<" do
|
|||
end
|
||||
|
||||
it "raises an ArgumentError when given a non-Numeric" do
|
||||
lambda { 5.0 < "4" }.should raise_error(ArgumentError)
|
||||
lambda { 5.0 < mock('x') }.should raise_error(ArgumentError)
|
||||
-> { 5.0 < "4" }.should raise_error(ArgumentError)
|
||||
-> { 5.0 < mock('x') }.should raise_error(ArgumentError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ describe "Float#<=" do
|
|||
end
|
||||
|
||||
it "raises an ArgumentError when given a non-Numeric" do
|
||||
lambda { 5.0 <= "4" }.should raise_error(ArgumentError)
|
||||
lambda { 5.0 <= mock('x') }.should raise_error(ArgumentError)
|
||||
-> { 5.0 <= "4" }.should raise_error(ArgumentError)
|
||||
-> { 5.0 <= mock('x') }.should raise_error(ArgumentError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ describe "Float#*" do
|
|||
end
|
||||
|
||||
it "raises a TypeError when given a non-Numeric" do
|
||||
lambda { 13.0 * "10" }.should raise_error(TypeError)
|
||||
lambda { 13.0 * :symbol }.should raise_error(TypeError)
|
||||
-> { 13.0 * "10" }.should raise_error(TypeError)
|
||||
-> { 13.0 * :symbol }.should raise_error(TypeError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -29,15 +29,15 @@ describe "Float#rationalize" do
|
|||
end
|
||||
|
||||
it "raises a FloatDomainError for Infinity" do
|
||||
lambda {infinity_value.rationalize}.should raise_error(FloatDomainError)
|
||||
-> {infinity_value.rationalize}.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
it "raises a FloatDomainError for NaN" do
|
||||
lambda { nan_value.rationalize }.should raise_error(FloatDomainError)
|
||||
-> { nan_value.rationalize }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
it "raises ArgumentError when passed more than one argument" do
|
||||
lambda { 0.3.rationalize(0.1, 0.1) }.should raise_error(ArgumentError)
|
||||
lambda { 0.3.rationalize(0.1, 0.1, 2) }.should raise_error(ArgumentError)
|
||||
-> { 0.3.rationalize(0.1, 0.1) }.should raise_error(ArgumentError)
|
||||
-> { 0.3.rationalize(0.1, 0.1, 2) }.should raise_error(ArgumentError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -16,9 +16,9 @@ describe "Float#round" do
|
|||
end
|
||||
|
||||
it "raises FloatDomainError for exceptional values" do
|
||||
lambda { (+infinity_value).round }.should raise_error(FloatDomainError)
|
||||
lambda { (-infinity_value).round }.should raise_error(FloatDomainError)
|
||||
lambda { nan_value.round }.should raise_error(FloatDomainError)
|
||||
-> { (+infinity_value).round }.should raise_error(FloatDomainError)
|
||||
-> { (-infinity_value).round }.should raise_error(FloatDomainError)
|
||||
-> { nan_value.round }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
it "rounds self to an optionally given precision" do
|
||||
|
|
@ -35,20 +35,20 @@ describe "Float#round" do
|
|||
end
|
||||
|
||||
it "raises a TypeError when its argument can not be converted to an Integer" do
|
||||
lambda { 1.0.round("4") }.should raise_error(TypeError)
|
||||
lambda { 1.0.round(nil) }.should raise_error(TypeError)
|
||||
-> { 1.0.round("4") }.should raise_error(TypeError)
|
||||
-> { 1.0.round(nil) }.should raise_error(TypeError)
|
||||
end
|
||||
|
||||
it "raises FloatDomainError for exceptional values when passed a non-positive precision" do
|
||||
lambda { Float::INFINITY.round( 0) }.should raise_error(FloatDomainError)
|
||||
lambda { Float::INFINITY.round(-2) }.should raise_error(FloatDomainError)
|
||||
lambda { (-Float::INFINITY).round( 0) }.should raise_error(FloatDomainError)
|
||||
lambda { (-Float::INFINITY).round(-2) }.should raise_error(FloatDomainError)
|
||||
-> { Float::INFINITY.round( 0) }.should raise_error(FloatDomainError)
|
||||
-> { Float::INFINITY.round(-2) }.should raise_error(FloatDomainError)
|
||||
-> { (-Float::INFINITY).round( 0) }.should raise_error(FloatDomainError)
|
||||
-> { (-Float::INFINITY).round(-2) }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
it "raises RangeError for NAN when passed a non-positive precision" do
|
||||
lambda { Float::NAN.round(0) }.should raise_error(RangeError)
|
||||
lambda { Float::NAN.round(-2) }.should raise_error(RangeError)
|
||||
-> { Float::NAN.round(0) }.should raise_error(RangeError)
|
||||
-> { Float::NAN.round(-2) }.should raise_error(RangeError)
|
||||
end
|
||||
|
||||
it "returns self for exceptional values when passed a non-negative precision" do
|
||||
|
|
@ -106,12 +106,12 @@ describe "Float#round" do
|
|||
end
|
||||
|
||||
it "raises FloatDomainError for exceptional values with a half option" do
|
||||
lambda { (+infinity_value).round(half: :up) }.should raise_error(FloatDomainError)
|
||||
lambda { (-infinity_value).round(half: :down) }.should raise_error(FloatDomainError)
|
||||
lambda { nan_value.round(half: :even) }.should raise_error(FloatDomainError)
|
||||
-> { (+infinity_value).round(half: :up) }.should raise_error(FloatDomainError)
|
||||
-> { (-infinity_value).round(half: :down) }.should raise_error(FloatDomainError)
|
||||
-> { nan_value.round(half: :even) }.should raise_error(FloatDomainError)
|
||||
end
|
||||
|
||||
it "raise for a non-existent round mode" do
|
||||
lambda { 14.2.round(half: :nonsense) }.should raise_error(ArgumentError, "invalid rounding mode: nonsense")
|
||||
-> { 14.2.round(half: :nonsense) }.should raise_error(ArgumentError, "invalid rounding mode: nonsense")
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ describe :float_modulo, shared: true do
|
|||
end
|
||||
|
||||
it "raises a ZeroDivisionError if other is zero" do
|
||||
lambda { 1.0.send(@method, 0) }.should raise_error(ZeroDivisionError)
|
||||
lambda { 1.0.send(@method, 0.0) }.should raise_error(ZeroDivisionError)
|
||||
-> { 1.0.send(@method, 0) }.should raise_error(ZeroDivisionError)
|
||||
-> { 1.0.send(@method, 0.0) }.should raise_error(ZeroDivisionError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -50,10 +50,10 @@ describe :float_quo, shared: true do
|
|||
end
|
||||
|
||||
it "raises a TypeError when argument isn't numeric" do
|
||||
lambda { 27292.2.send(@method, mock('non-numeric')) }.should raise_error(TypeError)
|
||||
-> { 27292.2.send(@method, mock('non-numeric')) }.should raise_error(TypeError)
|
||||
end
|
||||
|
||||
it "raises an ArgumentError when passed multiple arguments" do
|
||||
lambda { 272.221.send(@method, 6,0.2) }.should raise_error(ArgumentError)
|
||||
-> { 272.221.send(@method, 6,0.2) }.should raise_error(ArgumentError)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue