You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

26 lines
1014 B

from api.middleware import HeaderAuthMiddleware
from django.contrib.auth.models import User
from django.test import TestCase, override_settings
@override_settings(HEADER_AUTH_USER_GROUPS="X-AuthProxy-Groups")
@override_settings(HEADER_AUTH_ADMIN_GROUP_NAME="Admin")
@override_settings(HEADER_AUTH_GROUPS_SEPERATOR=";")
class HeaderAuthMiddlewareTest(TestCase):
def test_process_user_groups_is_super(self):
user = User.objects.create_user(username="TestUser")
user.is_superuser = False
middleware = HeaderAuthMiddleware()
middleware.process_user_groups(user, {"HTTP_X_AUTHPROXY_GROUPS": "Admin;Reader"})
self.assertTrue(user.is_superuser)
def test_process_user_groups_is_not_super(self):
user = User.objects.create_user(username="TestUser")
user.is_superuser = True
middleware = HeaderAuthMiddleware()
middleware.process_user_groups(user, {"HTTP_X_AUTHPROXY_GROUPS": "Guest;Reader"})
self.assertFalse(user.is_superuser)