Class: RSpec::Contracts::MessageGroup

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec/contracts/message_group.rb

Instance Method Summary collapse

Constructor Details

#initialize(receiver, method_name, arguments = nil) ⇒ MessageGroup

Returns a new instance of MessageGroup.



6
7
8
9
# File 'lib/rspec/contracts/message_group.rb', line 6

def initialize(receiver, method_name, arguments = nil)
  @receiver = receiver
  add_message Message.new(method_name, arguments)
end

Instance Method Details

#add_message(message) ⇒ Object



11
12
13
14
# File 'lib/rspec/contracts/message_group.rb', line 11

def add_message(message)
  @message = message
  @receiver.add_message @message
end

#add_response(response) ⇒ Object



20
21
22
23
24
# File 'lib/rspec/contracts/message_group.rb', line 20

def add_response(response)
  add_message @message.without_response if @multiple_responses
  @message.response = response
  @multiple_responses = true
end

#set_arguments(arguments) ⇒ Object



16
17
18
# File 'lib/rspec/contracts/message_group.rb', line 16

def set_arguments(arguments)
  @message.arguments = arguments
end