class Bogus::ProxyClass

Public Class Methods

create(fake_name, klass, create_recording_proxy) click to toggle source
# File lib/bogus/contracts/proxy_class.rb, line 11
def self.create(fake_name, klass, create_recording_proxy)
end
new(fake_name, klass, create_recording_proxy) click to toggle source
# File lib/bogus/contracts/proxy_class.rb, line 3
def initialize(fake_name, klass, create_recording_proxy)
  @fake_name = fake_name
  @klass = klass
  @create_recording_proxy = create_recording_proxy

  @recording_proxy = @create_recording_proxy.call(@klass, @fake_name)
end

Public Instance Methods

const_missing(name) click to toggle source
# File lib/bogus/contracts/proxy_class.rb, line 23
def const_missing(name)
  @recording_proxy.__send__(:const_get, name)
end
method_missing(name, *args, &block) click to toggle source
# File lib/bogus/contracts/proxy_class.rb, line 19
def method_missing(name, *args, &block)
  @recording_proxy.__send__(name, *args, &block)
end
new(*args, &block) click to toggle source
# File lib/bogus/contracts/proxy_class.rb, line 14
def new(*args, &block)
  instance = @klass.new(*args, &block)
  @create_recording_proxy.call(instance, @fake_name)
end
respond_to?(name) click to toggle source
# File lib/bogus/contracts/proxy_class.rb, line 27
def respond_to?(name)
  @recording_proxy.respond_to?(name)
end