Sha256: 27432c764edd27ffd64ea6c501809864b7da44cd59e463a4f0105883bd1e21ef

Contents?: true

Size: 893 Bytes

Versions: 2

Compression:

Stored size: 893 Bytes

Contents

require 'facets/hash/rekey.rb'
require 'test/unit'

class TestHashRekey < Test::Unit::TestCase

  def test_rekey
    foo = { :a=>1, :b=>2 }
    foo = foo.rekey(:c, :a)
    assert_equal( 1, foo[:c] )
    assert_equal( 2, foo[:b] )
    assert_equal( nil, foo[:a] )
  end

  def test_rekey!
    foo = { :a=>1, :b=>2 }
    foo.rekey!(:c, :a)
    assert_equal( 1, foo[:c] )
    assert_equal( 2, foo[:b] )
    assert_equal( nil, foo[:a] )
  end

  def test_rekey_with_block
    foo = { :a=>1, :b=>2 }
    foo = foo.rekey{ |k| k.to_s }
    assert_equal( 1, foo['a'] )
    assert_equal( 2, foo['b'] )
    assert_equal( nil, foo[:a] )
    assert_equal( nil, foo[:b] )
  end

  def test_rekey_with_block!
    foo = { :a=>1, :b=>2 }
    foo.rekey!{ |k| k.to_s }
    assert_equal( 1, foo['a'] )
    assert_equal( 2, foo['b'] )
    assert_equal( nil, foo[:a] )
    assert_equal( nil, foo[:b] )
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
facets-2.4.0 test/hash/test_rekey.rb
facets-2.4.1 test/hash/test_rekey.rb