1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
require File.expand_path('../../../../spec_helper', __FILE__)
require File.expand_path('../shared/constants', __FILE__)
describe "Digest::SHA512#==" do
it "equals itself" do
cur_digest = Digest::SHA512.new
cur_digest.should == cur_digest
end
it "equals the string representing its hexdigest" do
cur_digest = Digest::SHA512.new
cur_digest.should == SHA512Constants::BlankHexdigest
end
it "equals the appropriate object that responds to to_str" do
# blank digest
cur_digest = Digest::SHA512.new
(obj = mock(SHA512Constants::BlankHexdigest)).should_receive(:to_str).and_return(SHA512Constants::BlankHexdigest)
cur_digest.should == obj
# non-blank digest
cur_digest = Digest::SHA512.new
cur_digest << "test"
d_value = cur_digest.hexdigest
(obj = mock(d_value)).should_receive(:to_str).and_return(d_value)
cur_digest.should == obj
end
it "equals the same digest for a different object" do
cur_digest = Digest::SHA512.new
cur_digest2 = Digest::SHA512.new
cur_digest.should == cur_digest2
end
end
|