Skip to content

Commit ac01006

Browse files
sarahboycejacobtylerwalls
authored andcommitted
Refs #35303 -- Added missing async RemoteUserMiddleware tests for custom RemoteUserBackend.
1 parent 5bd7a66 commit ac01006

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

tests/auth_tests/test_remote_user.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -390,6 +390,13 @@ def configure_user(self, request, user, created=True):
390390
user.save()
391391
return user
392392

393+
async def aconfigure_user(self, request, user, created=True):
394+
user.email = request.META.get("HTTP_" + RemoteUserTest.email_header, "")
395+
if not created:
396+
user.last_name = user.username
397+
await user.asave()
398+
return user
399+
393400

394401
class RemoteUserCustomTest(RemoteUserTest):
395402
"""
@@ -436,6 +443,32 @@ def test_unknown_user(self):
436443
newuser = User.objects.get(username="newuser")
437444
self.assertEqual(newuser.email, "user@example.com")
438445

446+
async def test_known_user_async(self):
447+
"""See test_known_user."""
448+
await super().test_known_user_async()
449+
knownuser = await User.objects.aget(username="knownuser")
450+
knownuser2 = await User.objects.aget(username="knownuser2")
451+
self.assertEqual(knownuser.email, "")
452+
self.assertEqual(knownuser2.email, "")
453+
self.assertEqual(knownuser.last_name, "knownuser")
454+
self.assertEqual(knownuser2.last_name, "knownuser2")
455+
456+
async def test_unknown_user_async(self):
457+
num_users = await User.objects.acount()
458+
response = await self.async_client.get(
459+
"/remote_user/",
460+
**{
461+
self.header: "newuser",
462+
self.email_header: "user@example.com",
463+
},
464+
)
465+
self.assertEqual(response.context["user"].username, "newuser")
466+
self.assertEqual(response.context["user"].email, "user@example.com")
467+
self.assertEqual(response.context["user"].last_name, "")
468+
self.assertEqual(await User.objects.acount(), num_users + 1)
469+
newuser = await User.objects.aget(username="newuser")
470+
self.assertEqual(newuser.email, "user@example.com")
471+
439472

440473
class CustomHeaderMiddleware(RemoteUserMiddleware):
441474
"""

0 commit comments

Comments
 (0)