Sha256: 3b2419360330c6785517c4a728cbc69d4c57a496f279e61ff92761f668eac101

Contents?: true

Size: 874 Bytes

Versions: 4

Compression:

Stored size: 874 Bytes

Contents

describe 'RewrittenKeywords' do
  before :each do
    @rewritten_keywords = VirtualKeywords::RewrittenKeywords.new({}) 
  end

  it 'has no lambdas initially' do
    lambda { @rewritten_keywords.lambda_or_raise(4, :if) }.
        should raise_error VirtualKeywords::RewriteLambdaNotProvided
  end

  it 'registers lambdas for objects' do
    number = 5 
    keyword = :if
    the_lambda = lambda {}
    @rewritten_keywords.register_lambda_for_object(number, keyword, the_lambda)
    @rewritten_keywords.lambda_or_raise(number, keyword).should eql the_lambda
  end

  it 'registers lambdas for classes' do
    class MyClass
    end
    my_class = MyClass.new
    keyword = :if
    the_lambda = lambda {}
    @rewritten_keywords.register_lambda_for_class(MyClass, keyword, the_lambda)
    @rewritten_keywords.lambda_or_raise(my_class, keyword).should eql the_lambda
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
virtual_keywords-0.3.1 lib/spec/rewritten_keywords_spec.rb
virtual_keywords-0.3.0 lib/spec/rewritten_keywords_spec.rb
virtual_keywords-0.1.0 lib/spec/rewritten_keywords_spec.rb
virtual_keywords-0.0.0 lib/spec/rewritten_keywords_spec.rb