class Shoulda::Matchers::ActionController::RespondWithMatcher
@private
Public Class Methods
new(status)
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 93 def initialize(status) @status = symbol_to_status_code(status) end
Public Instance Methods
description()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 112 def description "respond with #{@status}" end
failure_message()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 102 def failure_message "Expected #{expectation}" end
Also aliased as: failure_message_for_should
failure_message_when_negated()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 107 def failure_message_when_negated "Did not expect #{expectation}" end
Also aliased as: failure_message_for_should_not
matches?(controller)
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 97 def matches?(controller) @controller = controller correct_status_code? || correct_status_code_range? end
Protected Instance Methods
correct_status_code?()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 118 def correct_status_code? response_code == @status end
correct_status_code_range?()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 122 def correct_status_code_range? @status.is_a?(Range) && @status.include?(response_code) end
expectation()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 148 def expectation "response to be a #{@status}, but was #{response_code}" end
response_code()
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 127 def response_code @controller.response.response_code end
symbol_to_status_code(potential_symbol)
click to toggle source
# File lib/shoulda/matchers/action_controller/respond_with_matcher.rb, line 131 def symbol_to_status_code(potential_symbol) case potential_symbol when :success then 200 when :redirect then 300..399 when :missing then 404 when :error then 500..599 when Symbol if defined?(::Rack::Utils::SYMBOL_TO_STATUS_CODE) ::Rack::Utils::SYMBOL_TO_STATUS_CODE[potential_symbol] else ::ActionController::Base::SYMBOL_TO_STATUS_CODE[potential_symbol] end else potential_symbol end end