Sha256: 3a0b24a802f33fabbe917b03a8ca28f3804a80cf4ffc0e659a134f43aca4911a

Contents?: true

Size: 831 Bytes

Versions: 10

Compression:

Stored size: 831 Bytes

Contents

require 'ronin/extensions/hash'

require 'spec_helper'

describe Hash do
  before(:all) do
    @hash = {:a => 1, :b => 2, :c => 3}
  end

  it "should be able to be exploded" do
    @exploded = @hash.explode(:x)
    @exploded.length.should == 3

    @exploded.each do |key,new_hash|
      new_hash[key].should == :x
    end
  end

  it "should explode only with specific keys" do
    @keys = [:a, :c]
    @exploded = @hash.explode(:x, :included => @keys)

    @exploded.each do |key,new_hash|
      @keys.include?(key).should == true
      new_hash[key].should == :x
    end
  end

  it "should not explode on specified keys" do
    @keys = [:b]
    @exploded = @hash.explode(:x, :excluded => @keys)

    @exploded.each do |key,new_hash|
      @keys.include?(key).should == false
      new_hash[key].should == :x
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
ronin-0.2.4 spec/extensions/hash_spec.rb
ronin-0.1.1 spec/extensions/hash_spec.rb
ronin-0.1.2 spec/extensions/hash_spec.rb
ronin-0.1.0 spec/extensions/hash_spec.rb
ronin-0.1.3 spec/extensions/hash_spec.rb
ronin-0.1.4 spec/extensions/hash_spec.rb
ronin-0.2.1 spec/extensions/hash_spec.rb
ronin-0.2.2 spec/extensions/hash_spec.rb
ronin-0.2.0 spec/extensions/hash_spec.rb
ronin-0.2.3 spec/extensions/hash_spec.rb