Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed #16222: Test failures due to more precise cookie timings. Refs …

…[16356].

git-svn-id: http://code.djangoproject.com/svn/django/trunk@16376 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit e096d56406b93220f03c495282fd6d0d297f3851 1 parent 55005a5
@andrewgodwin andrewgodwin authored
Showing with 10 additions and 1 deletion.
  1. +10 −1 django/contrib/formtools/wizard/tests/cookiestoragetests.py
View
11 django/contrib/formtools/wizard/tests/cookiestoragetests.py
@@ -25,6 +25,7 @@ def test_manipulated_cookie(self):
self.assertRaises(SuspiciousOperation, storage.load_data)
def test_reset_cookie(self):
+ from django.core.signing import SignatureExpired
request = get_request()
storage = self.get_storage()('wizard1', request, None)
@@ -35,7 +36,15 @@ def test_reset_cookie(self):
cookie_signer = signing.get_cookie_signer(storage.prefix)
signed_cookie_data = cookie_signer.sign(storage.encoder.encode(storage.data))
- self.assertEqual(response.cookies[storage.prefix].value, signed_cookie_data)
+
+ # signing with different timestamps generates different signatures
+ self.assertNotEqual(response.cookies[storage.prefix].value, signed_cookie_data)
+ self.assertEqual(cookie_signer.unsign(response.cookies[storage.prefix].value),
+ cookie_signer.unsign(signed_cookie_data))
+ self.assertRaises(SignatureExpired,
+ lambda: cookie_signer.unsign(value=response.cookies[storage.prefix].value, max_age=0))
+ self.assertEqual(cookie_signer.unsign(value=response.cookies[storage.prefix].value, max_age=10),
+ cookie_signer.unsign(signed_cookie_data))
storage.init_data()
storage.update_response(response)
Please sign in to comment.
Something went wrong with that request. Please try again.