Sha256: 714ae33fe1a7661f92a58279dcec738e36130ba6d45d4ea514c030f01c3ecbb4
Contents?: true
Size: 1.54 KB
Versions: 1
Compression:
Stored size: 1.54 KB
Contents
require "spec_helper" require "hamster/hash" describe Hamster::Hash do [:eql?, :==].each do |method| describe "##{method}" do describe "returns false when comparing with" do before do @hash = Hamster.hash("A" => "aye", "B" => "bee", "C" => "see") end it "a standard hash" do @hash.send(method, "A" => "aye", "B" => "bee", "C" => "see").should == false end it "an aribtrary object" do @hash.send(method, Object.new).should == false end end [ [{}, {}, true], [{ "A" => "aye" }, {}, false], [{}, { "A" => "aye" }, false], [{ "A" => "aye" }, { "A" => "aye" }, true], [{ "A" => "aye" }, { "B" => "bee" }, false], [{ "A" => "aye", "B" => "bee" }, { "A" => "aye" }, false], [{ "A" => "aye" }, { "A" => "aye", "B" => "bee" }, false], [{ "A" => "aye", "B" => "bee", "C" => "see" }, { "A" => "aye", "B" => "bee", "C" => "see" }, true], [{ "C" => "see", "A" => "aye", "B" => "bee" }, { "A" => "aye", "B" => "bee", "C" => "see" }, true], ].each do |a, b, expected| describe "returns #{expected.inspect}" do before do @a = Hamster.hash(a) @b = Hamster.hash(b) end it "for #{a.inspect} and #{b.inspect}" do @a.send(method, @b).should == expected end it "for #{b.inspect} and #{a.inspect}" do @b.send(method, @a).should == expected end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hamster-1.0.1.pre.rc.1 | spec/hamster/hash/eql_spec.rb |