1
0
mirror of https://github.com/django/django.git synced 2025-10-31 09:41:08 +00:00

[5.1.x] Fixed #35942 -- Fixed createsuperuser crash on Python 3.13+ when username is unavailable.

Thanks Mariusz Felisiak and Jacob Tyler Walls for reviews.

Backport of c635decb00 from main.
This commit is contained in:
Tommy Allen
2024-11-26 15:15:00 -05:00
committed by Natalia
parent 08ac8c1b44
commit 4b262408aa
3 changed files with 15 additions and 5 deletions

View File

@@ -126,6 +126,13 @@ class GetDefaultUsernameTestCase(TestCase):
def test_actual_implementation(self):
self.assertIsInstance(management.get_system_username(), str)
def test_getuser_raises_exception(self):
# TODO: Drop ImportError and KeyError when dropping support for PY312.
for exc in (ImportError, KeyError, OSError):
with self.subTest(exc=str(exc)):
with mock.patch("getpass.getuser", side_effect=exc):
self.assertEqual(management.get_system_username(), "")
def test_simple(self):
management.get_system_username = lambda: "joe"
self.assertEqual(management.get_default_username(), "joe")