From 5bb8d1f6d292e9a9d6e8c5768162d69c036f154d Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 21 Aug 2025 13:47:43 +0300 Subject: [PATCH] style: reorder imports in tests --- src/geventhttpclient/header.py | 4 ++-- tests/test_headers.py | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/geventhttpclient/header.py b/src/geventhttpclient/header.py index a7f083ba..fc943b4f 100644 --- a/src/geventhttpclient/header.py +++ b/src/geventhttpclient/header.py @@ -152,7 +152,7 @@ def extend(self, *args, **kwargs): for field in other: self.add(field, other[field]) elif hasattr(other, "keys"): - for field in other.fields(): + for field in other.keys(): self.add(field, other[field]) else: for field, value in other: @@ -167,7 +167,7 @@ def update(self, *args, **kwargs): while preserving case-sensitive header fields. """ if len(args) > 1: - raise TypeError(f"extend() takes at most 1 positional argument ({len(args)} given)") + raise TypeError(f"update() takes at most 1 positional argument ({len(args)} given)") other = args[0] if len(args) >= 1 else () if isinstance(other, type(self)): diff --git a/tests/test_headers.py b/tests/test_headers.py index 7b480981..1ec69d15 100644 --- a/tests/test_headers.py +++ b/tests/test_headers.py @@ -1,6 +1,7 @@ import random import string from datetime import datetime +from email.message import Message from http.cookiejar import CookieJar from urllib.request import Request @@ -225,3 +226,14 @@ def test_compat_dict(): assert d["D"] == "asdf" assert d["E"] == "d, f" assert d["Cookie"] == "d, e, f" + + +def test_extend_with_keys(): + msg = Message() + msg["Foo"] = "bar" + msg["Baz"] = "qux" + + h = Headers() + h.extend(msg) + assert h["Foo"] == "bar" + assert h["Baz"] == "qux"