summaryrefslogtreecommitdiff
path: root/spec/ruby/core/refinement/extend_object_spec.rb
blob: 4da8b359cccc5857cddbd8998d1d02849fbd192f (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 "Refinement#extend_object" do
  it "is not defined" do
    Refinement.should_not have_private_instance_method(:extend_object)
  end

  it "is not called by Object#extend" do
    c = Class.new
    Module.new do
      refine c do
        called = false
        define_method(:extend_object) { called = true }
        -> {
          c.extend(self)
        }.should raise_error(TypeError)
        called.should == false
      end
    end
  end
end