diff options
author | Claude Paroz <claude@2xlibre.net> | 2020-01-30 23:11:09 +0100 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-02-04 08:05:02 +0100 |
commit | 8ae84156d62bfc24d71e65cfe4d5cb84b9b1bd91 (patch) | |
tree | 5775472d0351363c9748be5eec171da3441c7162 /tests/messages_tests | |
parent | bcc9fa25285f506666fa5074fc43c7114d61bb79 (diff) | |
download | django-8ae84156d62bfc24d71e65cfe4d5cb84b9b1bd91.tar.gz |
Fixed #27604 -- Used the cookie signer to sign message cookies.
Co-authored-by: Craig Anderson <craiga@craiga.id.au>
Diffstat (limited to 'tests/messages_tests')
-rw-r--r-- | tests/messages_tests/test_cookie.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/messages_tests/test_cookie.py b/tests/messages_tests/test_cookie.py index 48c928cb9c..5675cd15eb 100644 --- a/tests/messages_tests/test_cookie.py +++ b/tests/messages_tests/test_cookie.py @@ -153,3 +153,14 @@ class CookieTests(BaseTests, SimpleTestCase): storage = self.get_storage() self.assertIsInstance(encode_decode(mark_safe("<b>Hello Django!</b>")), SafeData) self.assertNotIsInstance(encode_decode("<b>Hello Django!</b>"), SafeData) + + def test_legacy_hash_decode(self): + # RemovedInDjango40Warning: pre-Django 3.1 hashes will be invalid. + storage = self.storage_class(self.get_request()) + messages = ['this', 'that'] + # Encode/decode a message using the pre-Django 3.1 hash. + encoder = MessageEncoder(separators=(',', ':')) + value = encoder.encode(messages) + encoded_messages = '%s$%s' % (storage._legacy_hash(value), value) + decoded_messages = storage._decode(encoded_messages) + self.assertEqual(messages, decoded_messages) |