class RSpec::Contracts::MessageView

Public Class Methods

new(interface_name, message) click to toggle source
# File lib/rspec/contracts/message_view.rb, line 4
def initialize(interface_name, message)
  @interface_name = interface_name
  @message = message
end

Public Instance Methods

render() click to toggle source
# File lib/rspec/contracts/message_view.rb, line 9
def render
  arg_string = @message.arguments ? "()" : ""
  return_string = @message.response.respond_to?(:returned_value) ? "and return #{@message.response.returned_value.inspect}" : ""
  yield_string = @message.response.respond_to?(:yielded_value) ? "and return #{@message.response.yielded_value.inspect}" : ""
  "Interface '#{@interface_name}' must respond to '#{@message.name}#{arg_string}' #{return_string} #{yield_string}"
end