Sha256: 5e649a75a1329ad6fdef99df72ea32989ff3f7cafa7fc03f291195661cd2526c

Contents?: true

Size: 996 Bytes

Versions: 9

Compression:

Stored size: 996 Bytes

Contents

require File.expand_path('../shared/constants', __FILE__)

describe "Digest::MD5#==" do

  it "equals itself" do
    cur_digest = Digest::MD5.new
    cur_digest.should == cur_digest
  end

  it "equals the string representing its hexdigest" do
    cur_digest = Digest::MD5.new
    cur_digest.should == MD5Constants::BlankHexdigest
  end

  it "equals the appropriate object that responds to to_str" do
    # blank digest
    cur_digest = Digest::MD5.new
    obj = mock(MD5Constants::BlankHexdigest)
    obj.should_receive(:to_str).and_return(MD5Constants::BlankHexdigest)
    cur_digest.should == obj

    # non-blank digest
    cur_digest = Digest::MD5.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::MD5.new
    cur_digest2 = Digest::MD5.new
    cur_digest.should == cur_digest2
  end

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
rubysl-digest-2.1 spec/md5/equal_spec.rb
rubysl-digest-1.2.0 spec/md5/equal_spec.rb
rubysl-digest-1.1.0 spec/md5/equal_spec.rb
rubysl-digest-2.0.8 spec/md5/equal_spec.rb
rubysl-digest-2.0.7 spec/md5/equal_spec.rb
rubysl-digest-1.0.1 spec/md5/equal_spec.rb
rubysl-digest-2.0.3 spec/md5/equal_spec.rb
rubysl-digest-1.0.0 spec/md5/equal_spec.rb
rubysl-digest-2.0.2 spec/md5/equal_spec.rb