From ff169d32fee661a40fd600a86ea6fae931bd99c8 Mon Sep 17 00:00:00 2001 From: Shivaram Lingamneni Date: Thu, 26 Apr 2012 12:20:42 -0700 Subject: [PATCH] fix and test for a bug dhagrow reported --- requests/models.py | 4 +++- tests/test_cookies.py | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/requests/models.py b/requests/models.py index 00d5cc4..ff0ef01 100644 --- a/requests/models.py +++ b/requests/models.py @@ -570,7 +570,9 @@ class Request(object): # Skip if 'cookie' header is explicitly set. if 'cookie' not in self.headers: - self.headers['Cookie'] = get_cookie_header(self.cookies, self) + cookie_header = get_cookie_header(self.cookies, self) + if cookie_header is not None: + self.headers['Cookie'] = cookie_header # Pre-request hook. r = dispatch_hook('pre_request', self.hooks, self) diff --git a/tests/test_cookies.py b/tests/test_cookies.py index 9cf10e8..6c7cd13 100755 --- a/tests/test_cookies.py +++ b/tests/test_cookies.py @@ -81,6 +81,11 @@ class CookieTests(TestBaseMixin, unittest.TestCase): self.assertEqual(json.loads(r2.text)['cookies'], expected_cookies) self.assertIs(r.cookies, r2.cookies) + def test_none_cookie(self): + """Regression test: don't send a Cookie header with a string value of 'None'!""" + page = json.loads(requests.get(httpbin('headers')).text) + self.assertNotIn('Cookie', page['headers']) + class LWPCookieJarTest(TestBaseMixin, unittest.TestCase): """Check store/load of cookies to FileCookieJar's, specifically LWPCookieJar's.""" -- 2.34.1