Sha256: 550fb4282ab991e136770534a34618d655d051714ab12c342fd215d9efa42d2a

Contents?: true

Size: 638 Bytes

Versions: 2

Compression:

Stored size: 638 Bytes

Contents

require "spec_helper"

class BasicObjectSendSpec
  def foo
    :bar
  end

  def method_missing(symbol, *args, &block)
    "called_#{symbol}"
  end

  class Subclass < BasicObjectSendSpec
    def method_missing(symbol, *args, &block)
      args
    end
  end
end

describe "BasicObject#__send__"  do
  it "should call method_missing for undefined method" do
    BasicObjectSendSpec.new.__send__(:foo).should eq(:bar)
    BasicObjectSendSpec.new.__send__(:pow).should eq('called_pow')
  end

  it "should pass on arguments to method_missing" do
    BasicObjectSendSpec::Subclass.new.__send__(:blah, 1, 2, 3).should eq([1, 2, 3])
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
opal-0.3.41 spec/core_ext/basic_object/send_spec.rb
opal-0.3.40 spec/core_ext/basic_object/send_spec.rb