def test_defaults_withcookie_untampered(self): middleware = self._makeOne('secret', 'thecookiename') environ = {'HTTP_COOKIE':'thecookiename=%s; Path=/;' % _DEFAULT_COOKIE} result = middleware(environ, self._start_response) self.assertEqual(self.headers, []) self.assertEqual(result, []) self.assertEqual(environ['repoze.browserid'], _DEFAULT_BID)
def test_defaults_withcookie_tampered_badhmac(self): middleware = self._makeOne('secret', 'thecookiename') environ = {'HTTP_COOKIE': 'thecookiename=%s; Path=/;' % _BAD_COOKIE} result = middleware(environ, self._start_response) # headers were set because the hmac of the browser id was wrong self.assertEqual(len(self.headers), 1) self.assertEqual(result, []) self.assertEqual(environ['repoze.browserid'], _DEFAULT_BID)
def test_defaults_withcookie_tampered_badhmac(self): middleware = self._makeOne('secret', 'thecookiename') environ = {'HTTP_COOKIE':'thecookiename=%s; Path=/;' % _BAD_COOKIE} result = middleware(environ, self._start_response) # headers were set because the hmac of the browser id was wrong self.assertEqual(len(self.headers), 1) self.assertEqual(result, []) self.assertEqual(environ['repoze.browserid'], _DEFAULT_BID)
def test_defaults_withcookie_tampered_badformat(self): middleware = self._makeOne('secret', 'thecookiename') middleware.pid = 2 # for varying _DEFAULT_BID environ = {'HTTP_COOKIE': 'thecookiename=bad; Path=/;'} result = middleware(environ, self._start_response) # headers were set because the format of the browser id was bad self.assertEqual(len(self.headers), 1) self.assertEqual(result, []) self.assertNotEqual(environ['repoze.browserid'], _DEFAULT_BID)
def test_defaults_withcookie_untampered(self): middleware = self._makeOne('secret', 'thecookiename') environ = { 'HTTP_COOKIE': 'thecookiename=%s; Path=/;' % _DEFAULT_COOKIE } result = middleware(environ, self._start_response) self.assertEqual(self.headers, []) self.assertEqual(result, []) self.assertEqual(environ['repoze.browserid'], _DEFAULT_BID)
def test_defaults_withcookie_tampered_badformat(self): middleware = self._makeOne('secret', 'thecookiename') middleware.pid = 2 # for varying _DEFAULT_BID environ = {'HTTP_COOKIE':'thecookiename=bad; Path=/;'} result = middleware(environ, self._start_response) # headers were set because the format of the browser id was bad self.assertEqual(len(self.headers), 1) self.assertEqual(result, []) self.assertNotEqual(environ['repoze.browserid'], _DEFAULT_BID)
def test_defaults_nocookie(self): middleware = self._makeOne('secret', 'thecookiename') environ = {} app_iter = middleware(environ, self._start_response) self.assertEqual(len(self.headers), 1) header = self.headers[0] header_name, header_val = header self.assertEqual(header_name, 'Set-Cookie') cookie_val, path = self._get_cookie_components(header_val) name, cookie = cookie_val.split('=') self.assertEqual(name, 'thecookiename') self._assertCookieVal(cookie) self.assertEqual(path, 'Path=/') self.assertEqual(app_iter, [])
def test_cookie_lifetime(self): lifetime = 86400 middleware = self._makeOne('secret', 'thecookiename', cookie_lifetime=lifetime) environ = {} app_iter = middleware(environ, self._start_response) self.assertEqual(len(self.headers), 1) header = self.headers[0] header_name, header_val = header self.assertEqual(header_name, 'Set-Cookie') cookie_val, path, expiresh = self._get_cookie_components(header_val) name, cookie = cookie_val.split('=') self.assertEqual(name, 'thecookiename') self._assertCookieVal(cookie) self.assertEqual(path, 'Path=/') import time expires = time.gmtime(lifetime) expires = time.strftime('%a %d-%b-%Y %H:%M:%S GMT', expires) self.assertEqual(expiresh, 'Expires=%s' % expires) self.assertEqual(app_iter, [])