diff --git a/tests/typecheck/test_views.yml b/tests/typecheck/test_views.yml index bce6341c8..00c70be5b 100644 --- a/tests/typecheck/test_views.yml +++ b/tests/typecheck/test_views.yml @@ -70,8 +70,30 @@ from typing import List from rest_framework.viewsets import GenericViewSet - from rest_framework.permissions import BasePermission + from rest_framework.permissions import BasePermission, IsAdminUser class MyView(GenericViewSet): def get_permissions(self) -> List[BasePermission]: ... + +- case: test_override_get_permissions_super + main: | + from typing import Sequence + + from rest_framework.viewsets import GenericViewSet + from rest_framework.permissions import _SupportsHasPermission + + class MyView(GenericViewSet): + def get_permissions(self) -> Sequence[_SupportsHasPermission]: + return super().get_permissions() + +- case: test_override_get_permissions_operandholder + main: | + from typing import Sequence + + from rest_framework.viewsets import GenericViewSet + from rest_framework.permissions import AND, IsAuthenticated, IsAdminUser, _SupportsHasPermission + + class MyView(GenericViewSet): + def get_permissions(self) -> list[_SupportsHasPermission]: + return [AND(IsAuthenticated(), IsAdminUser())]