0

我为我的测试模拟了一个外部端点。

我的测试看起来像这样。

def test_valid(get_flask_app, get_auth_vals, requests_mock):

    verify_url = config.VERIFY_URL

    requests_mock.post(verify_url, json=mock_response) # mocks the upstream call 
    
    request_payload = {
        "ifsc": "ABCD0123456",
        "accountNumber": "1234567890"
    }

    response = get_flask_app.post(
                "/verify",
                data=json.dumps(request_payload),
                headers = {
                    'authorization': get_auth_vals[0],
                    'Org-Role': get_auth_vals[1],
                    'Content-Type': 'application/json'
                }
            )

    assert response.status_code == 200
    assert b"name" in response.data

在 requests_mock.post() 中,我想检查 req 正文是否有“帐户”字段。如果是这样,则返回带有模拟 JSON 数据的 200 响应,否则返回 400 响应。

注意:如果这可以通过 requests_mock 以外的方式实现,请提出建议。

4

0 回答 0