diff options
Diffstat (limited to 'spec/ruby/core/hash/compact_spec.rb')
-rw-r--r-- | spec/ruby/core/hash/compact_spec.rb | 84 |
1 files changed, 41 insertions, 43 deletions
diff --git a/spec/ruby/core/hash/compact_spec.rb b/spec/ruby/core/hash/compact_spec.rb index b75621b4d4..ec9d4b5d79 100644 --- a/spec/ruby/core/hash/compact_spec.rb +++ b/spec/ruby/core/hash/compact_spec.rb @@ -1,61 +1,59 @@ require_relative '../../spec_helper' require_relative 'fixtures/classes' -ruby_version_is "2.4" do - describe "Hash#compact" do - before :each do - @hash = { truthy: true, false: false, nil: nil, nil => true } - @initial_pairs = @hash.dup - @compact = { truthy: true, false: false, nil => true } - end +describe "Hash#compact" do + before :each do + @hash = { truthy: true, false: false, nil: nil, nil => true } + @initial_pairs = @hash.dup + @compact = { truthy: true, false: false, nil => true } + end - it "returns new object that rejects pair has nil value" do - ret = @hash.compact - ret.should_not equal(@hash) - ret.should == @compact - end + it "returns new object that rejects pair has nil value" do + ret = @hash.compact + ret.should_not equal(@hash) + ret.should == @compact + end - it "keeps own pairs" do - @hash.compact - @hash.should == @initial_pairs - end + it "keeps own pairs" do + @hash.compact + @hash.should == @initial_pairs end +end - describe "Hash#compact!" do - before :each do - @hash = { truthy: true, false: false, nil: nil, nil => true } - @initial_pairs = @hash.dup - @compact = { truthy: true, false: false, nil => true } - end +describe "Hash#compact!" do + before :each do + @hash = { truthy: true, false: false, nil: nil, nil => true } + @initial_pairs = @hash.dup + @compact = { truthy: true, false: false, nil => true } + end - it "returns self" do - @hash.compact!.should equal(@hash) - end + it "returns self" do + @hash.compact!.should equal(@hash) + end - it "rejects own pair has nil value" do + it "rejects own pair has nil value" do + @hash.compact! + @hash.should == @compact + end + + context "when each pair does not have nil value" do + before :each do @hash.compact! - @hash.should == @compact end - context "when each pair does not have nil value" do - before :each do - @hash.compact! - end - - it "returns nil" do - @hash.compact!.should be_nil - end + it "returns nil" do + @hash.compact!.should be_nil end + end - describe "on frozen instance" do - before :each do - @hash.freeze - end + describe "on frozen instance" do + before :each do + @hash.freeze + end - it "keeps pairs and raises a #{frozen_error_class}" do - ->{ @hash.compact! }.should raise_error(frozen_error_class) - @hash.should == @initial_pairs - end + it "keeps pairs and raises a #{frozen_error_class}" do + ->{ @hash.compact! }.should raise_error(frozen_error_class) + @hash.should == @initial_pairs end end end |