Opened 14 months ago

Closed 13 months ago

Last modified 11 months ago

#34074 closed New feature (fixed)

'headers' argument for test RequestFactory/Client

Reported by: Adam Johnson Owned by: David Wobrock
Component: Testing framework Version: dev
Severity: Normal Keywords:
Cc: David Wobrock Triage Stage: Ready for checkin
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

We have request.headers since Django 2.2, but RequestFactory, and thus Client, still require using the awkward meta syntax for setting headers:

self.client.get("/", HTTP_ACCEPT_LANGUAGE="en")

I propose we add support for a headers argument that takes a dictionary like request.headers:

self.client.get("/", headers={"accept-language": "en"})

This would make tests easier to read and write, since they’d be consistent with HttpRequest.

(If this is accepted and merged, open a django-upgrade issue to rewrite request factory and client invocations.)

Change History (10)

comment:1 Changed 14 months ago by Mariusz Felisiak

Triage Stage: UnreviewedAccepted

Sounds good.

comment:2 Changed 14 months ago by David Wobrock

Cc: David Wobrock added
Has patch: set
Owner: changed from nobody to David Wobrock
Status: newassigned

I agree that it would come in handy!

Here's a draft PR.

comment:3 Changed 14 months ago by Mariusz Felisiak

Patch needs improvement: set

comment:4 Changed 14 months ago by David Wobrock

Needs documentation: set
Patch needs improvement: unset

comment:5 Changed 14 months ago by David Wobrock

Needs documentation: unset

comment:6 Changed 13 months ago by Mariusz Felisiak

Patch needs improvement: set

comment:7 Changed 13 months ago by David Wobrock

Patch needs improvement: unset

comment:8 Changed 13 months ago by Mariusz Felisiak

Triage Stage: AcceptedReady for checkin

comment:9 Changed 13 months ago by Mariusz Felisiak <felisiak.mariusz@…>

Resolution: fixed
Status: assignedclosed

In 67da22f:

Fixed #34074 -- Added headers argument to RequestFactory and Client classes.

comment:10 Changed 11 months ago by Mariusz Felisiak <felisiak.mariusz@…>

In 99bd5fb4:

Refs #34074 -- Used headers argument for RequestFactory and Client in docs and tests.

Note: See TracTickets for help on using tickets.
Back to Top