diff options
| author | Jacob Walls <jacobtylerwalls@gmail.com> | 2024-06-09 12:18:26 -0400 |
|---|---|---|
| committer | Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> | 2024-08-13 16:09:52 +0200 |
| commit | b99c608ea10cabc97a6b251cdb6e81ef2a83bdcf (patch) | |
| tree | 4976763241879e6f05f4e1bdb5b8ea28c05c3d1b /tests | |
| parent | 602fe961e6834d665f2359087a1272e9f9806b71 (diff) | |
Refs #35402 -- Added tests for invalid usage of submodules in some settings.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/auth_tests/test_models.py | 7 | ||||
| -rw-r--r-- | tests/auth_tests/test_validators.py | 11 |
2 files changed, 17 insertions, 1 deletions
diff --git a/tests/auth_tests/test_models.py b/tests/auth_tests/test_models.py index 34f411f2f9..983424843c 100644 --- a/tests/auth_tests/test_models.py +++ b/tests/auth_tests/test_models.py @@ -433,6 +433,13 @@ class UserWithPermTestCase(TestCase): backend="invalid.backend.CustomModelBackend", ) + def test_invalid_backend_submodule(self): + with self.assertRaises(ImportError): + User.objects.with_perm( + "auth.test", + backend="json.tool", + ) + @override_settings( AUTHENTICATION_BACKENDS=["auth_tests.test_models.CustomModelBackend"] ) diff --git a/tests/auth_tests/test_validators.py b/tests/auth_tests/test_validators.py index 4da031a793..506c85c0ae 100644 --- a/tests/auth_tests/test_validators.py +++ b/tests/auth_tests/test_validators.py @@ -14,7 +14,7 @@ from django.contrib.auth.password_validation import ( password_validators_help_texts, validate_password, ) -from django.core.exceptions import ValidationError +from django.core.exceptions import ImproperlyConfigured, ValidationError from django.db import models from django.test import SimpleTestCase, TestCase, override_settings from django.test.utils import isolate_apps @@ -50,6 +50,15 @@ class PasswordValidationTest(SimpleTestCase): self.assertEqual(get_password_validators([]), []) + def test_get_password_validators_custom_invalid(self): + validator_config = [{"NAME": "json.tool"}] + msg = ( + "The module in NAME could not be imported: json.tool. " + "Check your AUTH_PASSWORD_VALIDATORS setting." + ) + with self.assertRaisesMessage(ImproperlyConfigured, msg): + get_password_validators(validator_config) + def test_validate_password(self): self.assertIsNone(validate_password("sufficiently-long")) msg_too_short = ( |
