我需要一些帮助来使用响应和 pytest 来模拟 query_param。
我有这样的看法:
@api_view(["GET"])
@csrf_exempt
@permission_classes((AllowAny,))
def get_code_and_extra(request):
code = request.GET.get("code", "")
extra = request.GET.get("extra", "")
if code and extra:
# do something
return HttpResponse("", status=200)
return HttpResponse("", status=400)
我的测试嘲笑:
@responses.activate
def test_receive(self, db, client):
responses.add(
responses.GET,
"https://test.com/?code=some-code&extra=extra",
json={},
status=200,
content_type="application/json",
)
resp = client.get(reverse("my-url"))
assert resp.status_code == 200
当我运行我的测试工作时,视图没有收到 query_params。我想通过它,以便测试按预期工作。
更多上下文:此视图用作从另一个站点接收这些参数的 webhook。该视图正在运行,但我想进行此测试。