Class: Crspec::Mock::Double

Inherits:
Object
  • Object
show all
Defined in:
lib/crspec/mock/double.rb

Direct Known Subclasses

InstanceDouble, Spy

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name = nil, stubs = {}) ⇒ Double

Returns a new instance of Double.



13
14
15
16
17
18
19
20
# File 'lib/crspec/mock/double.rb', line 13

def initialize(name = nil, stubs = {})
  @name = name || "Double"
  Space.current.register_double(self)
  stubs.each do |method_name, return_value|
    __crspec_verify_stub!(method_name)
    Space.current.register_stub(self, method_name, proc { return_value })
  end
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



11
12
13
# File 'lib/crspec/mock/double.rb', line 11

def name
  @name
end

Instance Method Details

#__crspec_verify_stub!(method_name) ⇒ Object



22
23
24
# File 'lib/crspec/mock/double.rb', line 22

def __crspec_verify_stub!(method_name)
  # Plain doubles accept any stub.
end

#inspectObject



30
31
32
# File 'lib/crspec/mock/double.rb', line 30

def inspect
  "#<Double #{@name.inspect}>"
end

#verify_expectations!Object



26
27
28
# File 'lib/crspec/mock/double.rb', line 26

def verify_expectations!
  # Verified via Space
end