mirror of
https://github.com/HoneyryderChuck/httpx.git
synced 2025-10-08 00:02:42 -04:00
replacing them with SimpleDelegator where it made sense, and removing them altogether whenever possible. ErrorResponse doesn't have a special handling for Response methods anymore, but it's highly debatable if it should.
31 lines
781 B
Ruby
31 lines
781 B
Ruby
# frozen_string_literal: true
|
|
|
|
require_relative "test_helper"
|
|
|
|
class ErrorResponseTest < Minitest::Test
|
|
include HTTPX
|
|
|
|
def test_error_response_status
|
|
r1 = ErrorResponse.new(request_mock, RuntimeError.new("wow"), {})
|
|
assert r1.status == "wow"
|
|
end
|
|
|
|
def test_error_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_error_response_to_s
|
|
r = ErrorResponse.new(request_mock, RuntimeError.new("wow"), {})
|
|
str = r.to_s
|
|
assert str.match(/wow \(.*RuntimeError.*\)/), "expected \"wow (RuntimeError)\" in \"#{str}\""
|
|
end
|
|
|
|
private
|
|
|
|
def request_mock
|
|
Request.new(:get, "http://example.com/")
|
|
end
|
|
end
|