2

我正在创建一个单元测试,以确保我的 http 客户端正确传递了身份验证令牌。我正在使用requests_mock

with requests_mock.mock() as m:
    m.get(
        "https://my-endpoint",
        text="{}",
    )
history = m.request_history[0]
assert "Bearer test" == history._request.headers.get("Authorization")

但是 history._request 是一个受保护的成员,所以我想避免在我的代码中绑定到受保护的成员。有没有更合适的方法来检查requests_mock中的 Authorization 标头?

4

1 回答 1

1

而不是使用history._request.headers,您可以使用history.headers.

例如:

import requests
import requests_mock

with requests_mock.mock() as m:
    m.get(
        "https://my-endpoint",
        text="{}",
    )

    headers = {'Authorization': 'Bearer test'}
    requests.get('https://my-endpoint', headers=headers)
    history = m.request_history[0]
    assert "Bearer test" == history.headers.get("Authorization")
于 2020-06-17T09:59:36.810 回答