Module: Mocha::ClassMethods

Included in:
Class
Defined in:
lib/mocha/object.rb

Overview

Methods added to all classes to allow mocking and stubbing on real (i.e. non-mock) objects.

Defined Under Namespace

Classes: AnyInstance

Instance Method Summary collapse

Instance Method Details

#any_instanceMock

Returns a mock object which will detect calls to any instance of this class.

Examples:

Return false to invocation of Product#save for any instance of Product.

Product.any_instance.stubs(:save).returns(false)
product_1 = Product.new
assert_equal false, product_1.save
product_2 = Product.new
assert_equal false, product_2.save

Returns:

  • (Mock)

    a mock object which will detect calls to any instance of this class.

Raises:

  • (StubbingError)

    if attempting to stub method which is not allowed.


231
232
233
234
235
236
# File 'lib/mocha/object.rb', line 231

def any_instance
  if frozen?
    raise StubbingError.new("can't stub method on frozen object: #{mocha_inspect}.any_instance", caller)
  end
  @any_instance ||= AnyInstance.new(self)
end

#stubba_methodObject


188
189
190
# File 'lib/mocha/object.rb', line 188

def stubba_method
  Mocha::ClassMethod
end