Sha256: 50affd3db1e7bddfbf342ff3e218f4d747378fe2a6c54a3034db65da1f415125
Contents?: true
Size: 920 Bytes
Versions: 7
Compression:
Stored size: 920 Bytes
Contents
require 'spec_helper' require 'gorillib/hash/zip' describe Hash, :hashlike_spec => true do describe '#zip' do it 'builds a hash from keys and values' do Hash.zip([:a, :b, :c], [1, 2, 3]).should == { :a => 1, :b => 2, :c => 3 } end it 'ignores extra values' do Hash.zip([:a, :b, :c], [1, 2, 3, 4, 5]).should == { :a => 1, :b => 2, :c => 3 } end it 'supplies nil values for extra keys' do Hash.zip([:a, :b, :c, :d], [1, 2, 3]).should == { :a => 1, :b => 2, :c => 3, :d => nil } end it 'uses the default block if given' do hsh = Hash.zip([:a, :b, :c], [1, 2, 3]){|h,k| h[k] = :foo } hsh.should == { :a => 1, :b => 2, :c => 3 } hsh[:d].should == :foo end it 'uses the default value if given' do hsh = Hash.zip([:a, :b, :c], [1, 2, 3], :bar) hsh.should == { :a => 1, :b => 2, :c => 3 } hsh[:d].should == :bar end end end
Version data entries
7 entries across 7 versions & 1 rubygems