Skip to content

Commit

Permalink
add laurentb's test case for cookie handling on redirects
Browse files Browse the repository at this point in the history
  • Loading branch information
slingamn committed May 2, 2012
1 parent 6eb349f commit 7832f2a
Showing 1 changed file with 21 additions and 2 deletions.
23 changes: 21 additions & 2 deletions tests/test_requests_ext.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,8 +104,27 @@ def test_redirect_encoding(self):
'php')
assert r.ok



def test_cookies_on_redirects(self):
"""Test interaction between cookie handling and redirection."""
# get a cookie for tinyurl.com ONLY
s = requests.session()
s.get(url='http://tinyurl.com/preview.php?disable=1')
# we should have set a cookie for tinyurl: preview=0
self.assertIn('preview', s.cookies)
self.assertEqual(s.cookies['preview'], '0')
self.assertEqual(list(s.cookies)[0].name, 'preview')
self.assertEqual(list(s.cookies)[0].domain, 'tinyurl.com')

# get cookies on another domain
r2 = s.get(url='http://httpbin.org/cookies')
# the cookie is not there
self.assertNotIn('preview', json.loads(r2.text)['cookies'])

# this redirects to another domain, httpbin.org
# cookies of the first domain should NOT be sent to the next one
r3 = s.get(url='http://tinyurl.com/7zp3jnr')
assert r3.url == 'http://httpbin.org/cookies'
self.assertNotIn('preview', json.loads(r2.text)['cookies'])

if __name__ == '__main__':
unittest.main()
Expand Down

0 comments on commit 7832f2a

Please sign in to comment.