diff options
Diffstat (limited to 'spec/ruby/core/kernel/Float_spec.rb')
| -rw-r--r-- | spec/ruby/core/kernel/Float_spec.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/ruby/core/kernel/Float_spec.rb b/spec/ruby/core/kernel/Float_spec.rb index 47d7d0816f..43daefa6aa 100644 --- a/spec/ruby/core/kernel/Float_spec.rb +++ b/spec/ruby/core/kernel/Float_spec.rb @@ -299,6 +299,31 @@ describe :kernel_float, shared: true do c = Complex(2, 3) lambda { @object.send(:Float, c) }.should raise_error(RangeError) end + + ruby_version_is "2.6" do + describe "when passed exception: false" do + describe "and valid input" do + it "returns a Float number" do + @object.send(:Float, 1, exception: false).should == 1.0 + @object.send(:Float, "1", exception: false).should == 1.0 + @object.send(:Float, "1.23", exception: false).should == 1.23 + end + end + + describe "and invalid input" do + it "swallows an error" do + @object.send(:Float, "abc", exception: false).should == nil + @object.send(:Float, :sym, exception: false).should == nil + end + end + + describe "and nil" do + it "swallows it" do + @object.send(:Float, nil, exception: false).should == nil + end + end + end + end end describe "Kernel.Float" do |
