def raw(self) -> typing.List[typing.Tuple[bytes, bytes]]:
"""
Returns a list of the raw header items, as byte pairs.
- May be mutated in-place.
"""
- return self._list
+ return list(self._list)
def keys(self) -> typing.KeysView[str]:
return {key.decode(self.encoding): None for key in self._dict.keys()}.keys()
if not has_connection:
auto_headers.append((b"connection", b"keep-alive"))
- for item in reversed(auto_headers):
- self.headers.raw.insert(0, item)
+ self.headers = Headers(auto_headers + self.headers.raw)
@property
def content(self) -> bytes:
import httpcore
import pytest
-from httpx import AsyncClient, Headers, __version__
+from httpx import AsyncClient, Headers, Request, __version__
from httpx._content_streams import ContentStream, JSONStream
"authorization": "Basic dXNlcm5hbWU6cGFzc3dvcmQ=",
}
}
+
+
+def test_request_auto_headers():
+ request = Request("GET", "https://www.example.org/")
+ assert "host" in request.headers