summaryrefslogtreecommitdiff
path: root/spec/ruby/core/proc/binding_spec.rb
blob: 86ab6bd400bc0c4a93849ee909ec5fa3b199e113 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
require_relative '../../spec_helper'

describe "Proc#binding" do
  it "returns a Binding instance" do
    [Proc.new{}, -> {}, proc {}].each { |p|
      p.binding.should be_kind_of(Binding)
    }
  end

  it "returns the binding associated with self" do
    obj = mock('binding')
    def obj.test_binding(some, params)
      -> {}
    end

    lambdas_binding = obj.test_binding(1, 2).binding

    eval("some", lambdas_binding).should == 1
    eval("params", lambdas_binding).should == 2
  end
end