Sha256: 9398f8dd5d8f53ff930051289fafaadb8a95540b15e5b6c046539fbdd4b79fc3

Contents?: true

Size: 754 Bytes

Versions: 4

Compression:

Stored size: 754 Bytes

Contents

#
# Specifying rufus-tokyo
#
# Sun Feb  8 14:15:31 JST 2009
#

require File.dirname(__FILE__) + '/spec_base'

require 'rufus/tokyo/hmethods'


class MyHash
  include Rufus::Tokyo::HashMethods
  attr_accessor :default_proc
  def get (k)
    k.to_i % 2 == 0 ? k : nil
  end
end

describe 'an instance that include HashMethods' do

  before do
    @h = MyHash.new
  end

  it 'should be ready for testing' do # :(
    @h[1].should.be.nil
    @h[2].should.equal(2)
  end

  it 'should accept a default value' do
    @h.default = :default
    @h.default.should.equal(:default)
  end

  it 'should accept a default_proc' do
    @h.default_proc = lambda { |h, k| k * 2 }
    @h[1].should.equal(2)
    @h[2].should.equal(2)
    @h[3].should.equal(6)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
metry-1.0.0 vendor/rufus-tokyo/spec/hmethods_spec.rb
metry-1.0.1 vendor/rufus-tokyo/spec/hmethods_spec.rb
metry-1.1.0 vendor/rufus-tokyo/spec/hmethods_spec.rb
metry-1.2.0 vendor/rufus-tokyo/spec/hmethods_spec.rb