1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- from django.contrib.auth import get_user_model
- from misago.core.testutils import MisagoTestCase
- from .models import AnonymousUser, Online
- UserModel = get_user_model()
- class UserTestCase(MisagoTestCase):
- USER_PASSWORD = "Pass.123"
- USER_IP = '127.0.0.1'
- def setUp(self):
- super().setUp()
- self.get_initial_user()
- def get_initial_user(self):
- self.user = self.get_anonymous_user()
- def get_anonymous_user(self):
- return AnonymousUser()
- def get_authenticated_user(self):
- return UserModel.objects.create_user(
- "TestUser",
- "test@user.com",
- self.USER_PASSWORD,
- joined_from_ip=self.USER_IP,
- )
- def get_superuser(self):
- user = UserModel.objects.create_superuser(
- "TestSuperUser", "test@superuser.com", self.USER_PASSWORD
- )
- user.joined_from_ip = self.USER_IP
- user.save()
- return user
- def login_user(self, user, password=None):
- self.client.force_login(user)
- def logout_user(self):
- if self.user.is_authenticated:
- Online.objects.filter(user=self.user).delete()
- self.client.logout()
- class AuthenticatedUserTestCase(UserTestCase):
- def get_initial_user(self):
- self.user = self.get_authenticated_user()
- self.login_user(self.user)
- def reload_user(self):
- self.user = UserModel.objects.get(id=self.user.id)
- class SuperUserTestCase(AuthenticatedUserTestCase):
- def get_initial_user(self):
- self.user = self.get_superuser()
- self.login_user(self.user)
|