class WebMock::ResponsesSequence

Attributes

times_to_repeat[RW]

Public Class Methods

new(responses) click to toggle source
# File lib/webmock/responses_sequence.rb, line 9
def initialize(responses)
  @times_to_repeat = 1
  @responses = responses
  @current_position = 0
end

Public Instance Methods

end?() click to toggle source
# File lib/webmock/responses_sequence.rb, line 15
def end?
  @times_to_repeat == 0
end
next_response() click to toggle source
# File lib/webmock/responses_sequence.rb, line 19
def next_response
  if @times_to_repeat > 0
    response = @responses[@current_position]
    increase_position
    response
  else
    @responses.last
  end
end

Private Instance Methods

increase_position() click to toggle source
# File lib/webmock/responses_sequence.rb, line 31
def increase_position
  if @current_position == (@responses.length - 1)
    @current_position = 0
    @times_to_repeat -= 1
  else
    @current_position += 1
  end
end