class RSpec::Mocks::SimpleMessageExpectation

A message expectation that only allows concrete return values to be set for a message. While this same effect can be achieved using a standard MessageExpectation, this version is much faster and so can be used as an optimization.

@private

Public Class Methods

# File rspec-mocks/lib/rspec/mocks/message_expectation.rb, line 12
def initialize(message, response, error_generator, backtrace_line=nil)
  @message, @response, @error_generator, @backtrace_line = message.to_sym, response, error_generator, backtrace_line
  @received = false
end

Public Instance Methods

# File rspec-mocks/lib/rspec/mocks/message_expectation.rb, line 26
def called_max_times?
  false
end
# File rspec-mocks/lib/rspec/mocks/message_expectation.rb, line 17
def invoke(*_)
  @received = true
  @response
end
# File rspec-mocks/lib/rspec/mocks/message_expectation.rb, line 22
def matches?(message, *_)
  @message == message.to_sym
end
# File rspec-mocks/lib/rspec/mocks/message_expectation.rb, line 37
def unadvise(_)
end
# File rspec-mocks/lib/rspec/mocks/message_expectation.rb, line 30
def verify_messages_received
  return if @received
  @error_generator.raise_expectation_error(
    @message, 1, ArgumentListMatcher::MATCH_ALL, 0, nil, [], @backtrace_line
  )
end