diff options
Diffstat (limited to 'spec/ruby/core/float/floor_spec.rb')
| -rw-r--r-- | spec/ruby/core/float/floor_spec.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/spec/ruby/core/float/floor_spec.rb b/spec/ruby/core/float/floor_spec.rb new file mode 100644 index 0000000000..f77300eb04 --- /dev/null +++ b/spec/ruby/core/float/floor_spec.rb @@ -0,0 +1,28 @@ +require_relative '../../spec_helper' +require_relative '../integer/shared/integer_floor_precision' + +describe "Float#floor" do + context "with values equal to integers" do + it_behaves_like :integer_floor_precision, :Float + end + + it "returns the largest Integer less than or equal to self" do + -1.2.floor.should.eql?( -2) + -1.0.floor.should.eql?( -1) + 0.0.floor.should.eql?( 0 ) + 1.0.floor.should.eql?( 1 ) + 5.9.floor.should.eql?( 5 ) + -9223372036854775808.1.floor.should.eql?(-9223372036854775808) + +9223372036854775808.1.floor.should.eql?(+9223372036854775808) + end + + it "returns the largest number less than or equal to self with an optionally given precision" do + 2.1679.floor(0).should.eql?(2) + 214.94.floor(-1).should.eql?(210) + 7.0.floor(1).should.eql?(7.0) + 200.0.floor(-2).should.eql?(200) + -1.234.floor(2).should.eql?(-1.24) + 5.123812.floor(4).should.eql?(5.1238) + 10.00001.floor(5).should.eql?(10.00001) + end +end |
