Sha256: 75f8de3e4a3c24dd569355f658b1f775f5c3982c02e6bb2ac0cbcc63133e3a62
Contents?: true
Size: 1.32 KB
Versions: 1
Compression:
Stored size: 1.32 KB
Contents
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper') describe Hamster::Hash do [:filter, :select].each do |method| describe "##{method}" do before do @original = Hamster.hash("A" => "aye", "B" => "bee", "C" => "see") end describe "when everything matches" do before do @result = @original.send(method) { |key, value| true } end it "returns self" do @result.should equal(@original) end end describe "when only some things match" do describe "with a block" do before do @result = @original.send(method) { |key, value| key == "A" && value == "aye" } end it "preserves the original" do @original.should == Hamster.hash("A" => "aye", "B" => "bee", "C" => "see") end it "returns a set with the matching values" do @result.should == Hamster.hash("A" => "aye") end end describe "with no block" do before do @enumerator = @original.send(method) end it "returns an enumerator over the values" do Hamster.hash(@enumerator.to_a).should == Hamster.hash("A" => "aye", "B" => "bee", "C" => "see") end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hamster-0.1.11 | spec/hamster/hash/filter_spec.rb |