From 806aa0f41c7816b2859a6961939ed19499b73fe7 Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Sat, 2 Apr 2016 14:38:33 +0200 Subject: improve .replace() and move it into netlib --- test/netlib/http/test_headers.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'test/netlib/http') diff --git a/test/netlib/http/test_headers.py b/test/netlib/http/test_headers.py index d50fee3e..8c1db9dc 100644 --- a/test/netlib/http/test_headers.py +++ b/test/netlib/http/test_headers.py @@ -150,3 +150,22 @@ class TestHeaders(object): assert headers != headers2 headers2.set_state(headers.get_state()) assert headers == headers2 + + def test_replace_simple(self): + headers = Headers(Host="example.com", Accept="text/plain") + replacements = headers.replace("Host: ", "X-Host: ") + assert replacements == 1 + assert headers["X-Host"] == "example.com" + assert "Host" not in headers + assert headers["Accept"] == "text/plain" + + def test_replace_multi(self): + headers = self._2host() + headers.replace(r"Host: example\.com", r"Host: example.de") + assert headers.get_all("Host") == ["example.de", "example.org"] + + def test_replace_remove_spacer(self): + headers = Headers(Host="example.com") + replacements = headers.replace(r"Host: ", "X-Host ") + assert replacements == 0 + assert headers["Host"] == "example.com" -- cgit v1.2.3