class RSpec::Hollerback::Mocks::AndCallbackImplementation

Public Class Methods

new(callback_class, callback_name, *callback_args, &callback_block) click to toggle source
# File lib/rspec/hollerback/mocks/and_callback_implementation.rb, line 5
def initialize(callback_class, callback_name, *callback_args, &callback_block)
  @callback_class = callback_class
  @callback_name = callback_name
  @callback_args = callback_args
  @callback_block = callback_block if callback_block
end

Public Instance Methods

call(*args, &block) click to toggle source
# File lib/rspec/hollerback/mocks/and_callback_implementation.rb, line 12
def call(*args, &block)
  callback_instance = @callback_class.new(block)
  if @callback_block
    callback_instance.respond_with(@callback_name, *@callback_args, &@callback_block)
  else
    callback_instance.respond_with(@callback_name, *@callback_args)
  end
end