mirror of
https://github.com/django/django.git
synced 2025-08-03 18:38:50 +00:00
Fixed #31359 -- Deprecated get_random_string() calls without an explicit length.
This commit is contained in:
parent
5cc2c63f90
commit
e663f695fb
6 changed files with 47 additions and 9 deletions
|
@ -1,10 +1,12 @@
|
|||
import hashlib
|
||||
import unittest
|
||||
|
||||
from django.test import SimpleTestCase
|
||||
from django.test import SimpleTestCase, ignore_warnings
|
||||
from django.utils.crypto import (
|
||||
InvalidAlgorithm, constant_time_compare, pbkdf2, salted_hmac,
|
||||
InvalidAlgorithm, constant_time_compare, get_random_string, pbkdf2,
|
||||
salted_hmac,
|
||||
)
|
||||
from django.utils.deprecation import RemovedInDjango40Warning
|
||||
|
||||
|
||||
class TestUtilsCryptoMisc(SimpleTestCase):
|
||||
|
@ -183,3 +185,14 @@ class TestUtilsCryptoPBKDF2(unittest.TestCase):
|
|||
def test_default_hmac_alg(self):
|
||||
kwargs = {'password': b'password', 'salt': b'salt', 'iterations': 1, 'dklen': 20}
|
||||
self.assertEqual(pbkdf2(**kwargs), hashlib.pbkdf2_hmac(hash_name=hashlib.sha256().name, **kwargs))
|
||||
|
||||
|
||||
class DeprecationTests(SimpleTestCase):
|
||||
@ignore_warnings(category=RemovedInDjango40Warning)
|
||||
def test_get_random_string(self):
|
||||
self.assertEqual(len(get_random_string()), 12)
|
||||
|
||||
def test_get_random_string_warning(self):
|
||||
msg = 'Not providing a length argument is deprecated.'
|
||||
with self.assertRaisesMessage(RemovedInDjango40Warning, msg):
|
||||
get_random_string()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue