spejstore/auth/mock_auth.py

32 lines
876 B
Python

from django.contrib.auth.models import User
from django.utils.deprecation import MiddlewareMixin
from django.utils.functional import SimpleLazyObject
class MockUser(object):
is_active = True
is_staff = True
is_authenticated = True
pk = True
def has_module_perms(*args):
return True
def has_perm(*args):
return True
def has_perms(*args):
return True
def __init__(self, name="mock"):
if len(User.objects.filter()) < 1:
user = User.objects.create_user(name, name + "@hackerspace.pl", name + "pass")
user.first_name = 'John'
user.last_name = 'Doe'
user.save()
def get_user(request):
user = MockUser()
return user
class Middleware(MiddlewareMixin):
def process_request(self, request):
request.user = SimpleLazyObject(lambda: get_user(request))