class FlexMock::RSpecMatchers::HaveReceived

Public Class Methods

new(method_name) click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 9
def initialize(method_name)
  @method_name = method_name
  @args = nil
  @block = nil
  @times = nil
  @needs_block = nil
  @additional_validations = []
end

Public Instance Methods

and(&block) click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 69
def and(&block)
  @additional_validations << block
  self
end
construct_options() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 74
def construct_options
  {
    :times      => @times,
    :with_block => @needs_block,
    :on_count   => @on_count,
    :and        => @additional_validations,
  }
end
failure_message_for_should() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 24
def failure_message_for_should
  describe_spy_expectation(@spy, @method_name, @args, @options)
end
failure_message_for_should_not() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 28
def failure_message_for_should_not
  describe_spy_negative_expectation(@spy, @method_name, @args, @options)
end
matches?(spy) click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 18
def matches?(spy)
  @spy = spy
  @options = construct_options
  @spy.flexmock_received?(@method_name, @args, @options)
end
never() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 52
def never
  times(0)
end
on(on_count) click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 64
def on(on_count)
  @on_count = on_count
  self
end
once() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 56
def once
  times(1)
end
times(n) click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 47
def times(n)
  @times = n
  self
end
twice() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 60
def twice
  times(2)
end
with(*args) click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 32
def with(*args)
  @args = args
  self
end
with_a_block() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 37
def with_a_block
  @needs_block = true
  self
end
without_a_block() click to toggle source
# File lib/flexmock/rspec_spy_matcher.rb, line 42
def without_a_block
  @needs_block = false
  self
end