Coverage for apps/comments_views/core/mixins.py: 94%
12 statements
« prev ^ index » next coverage.py v7.4.4, created at 2024-05-19 19:20 +0000
« prev ^ index » next coverage.py v7.4.4, created at 2024-05-19 19:20 +0000
1from abc import ABC
2from abc import abstractmethod
4from django.contrib.auth.models import AbstractBaseUser
5from django.contrib.auth.models import AnonymousUser
7from .rights import AbstractUserRights
10class AbstractCommentRightsMixin(ABC):
11 @property
12 @abstractmethod
13 def rights_class(self) -> type[AbstractUserRights]:
14 pass
16 def get_rights(self, user: AbstractBaseUser | AnonymousUser) -> AbstractUserRights:
17 return self.rights_class(user)