def test_cookie_redirect(self): class MockHTTPHandler(urllib2.HTTPHandler): def __init__(self): self._count = 0 def http_open(self, req): import mimetools from StringIO import StringIO if self._count == 0: self._count = self._count + 1 msg = mimetools.Message( StringIO("Location: http://www.cracker.com/\r\n\r\n")) return self.parent.error("http", req, MockFile(), 302, "Found", msg) else: self.req = req msg = mimetools.Message(StringIO("\r\n\r\n")) return MockResponse(200, "OK", msg, "", req.get_full_url()) # cookies shouldn't leak into redirected requests from cookielib import CookieJar from urllib2 import build_opener, HTTPHandler, HTTPError, \ HTTPCookieProcessor from test_cookielib import interact_netscape cj = CookieJar() interact_netscape(cj, "http://www.example.com/", "spam=eggs") hh = MockHTTPHandler() cp = HTTPCookieProcessor(cj) o = build_opener(hh, cp) o.open("http://www.example.com/") self.assert_(not hh.req.has_header("Cookie"))
def test_cookie_redirect(self): class MockHTTPHandler(urllib2.HTTPHandler): def __init__(self): self._count = 0 def http_open(self, req): import mimetools from StringIO import StringIO if self._count == 0: self._count = self._count + 1 msg = mimetools.Message( StringIO("Location: http://www.cracker.com/\r\n\r\n")) return self.parent.error( "http", req, MockFile(), 302, "Found", msg) else: self.req = req msg = mimetools.Message(StringIO("\r\n\r\n")) return MockResponse(200, "OK", msg, "", req.get_full_url()) # cookies shouldn't leak into redirected requests from cookielib import CookieJar from urllib2 import build_opener, HTTPHandler, HTTPError, \ HTTPCookieProcessor from test_cookielib import interact_netscape cj = CookieJar() interact_netscape(cj, "http://www.example.com/", "spam=eggs") hh = MockHTTPHandler() cp = HTTPCookieProcessor(cj) o = build_opener(hh, cp) o.open("http://www.example.com/") self.assert_(not hh.req.has_header("Cookie"))
def test_cookie_redirect(self): # cookies shouldn't leak into redirected requests from cookielib import CookieJar from test_cookielib import interact_netscape cj = CookieJar() interact_netscape(cj, "http://www.example.com/", "spam=eggs") hh = MockHTTPHandler(302, "Location: http://www.cracker.com/\r\n\r\n") hdeh = urllib2.HTTPDefaultErrorHandler() hrh = urllib2.HTTPRedirectHandler() cp = urllib2.HTTPCookieProcessor(cj) o = build_test_opener(hh, hdeh, hrh, cp) o.open("http://www.example.com/") self.assert_(not hh.req.has_header("Cookie"))