httpx/test/error_response_test.rb
2020-10-30 16:19:18 +00:00

33 lines
848 B
Ruby

# frozen_string_literal: true
require_relative "test_helper"
class ErrorResponseTest < Minitest::Test
include HTTPX
def test_response_status
r1 = ErrorResponse.new(request_mock, RuntimeError.new("wow"), {})
assert r1.status == "wow"
end
def test_response_raise_for_status
some_error = Class.new(RuntimeError)
r1 = ErrorResponse.new(request_mock, some_error.new("wow"), {})
assert_raises(some_error) { r1.raise_for_status }
end
def test_respond_method_missing_errors
r1 = ErrorResponse.new(request_mock, RuntimeError.new("wow"), {})
ex1 = assert_raises(NoMethodError) { r1.read }
assert ex1.message =~ /undefined response method/
ex2 = assert_raises(NoMethodError) { r1.bang }
assert ex2.message =~ /undefined method/
end
private
def request_mock
Request.new(:get, "/")
end
end