Fix small test fails introduced in the commit 27f12f7
parent
27f12f7be9
commit
7c5b85ea5c
|
@ -54,6 +54,10 @@ class MembersFilterBackend(BaseFilterBackend):
|
||||||
return queryset.filter(Q(memberships__project=project) | Q(id=project.owner.id)).distinct()
|
return queryset.filter(Q(memberships__project=project) | Q(id=project.owner.id)).distinct()
|
||||||
else:
|
else:
|
||||||
raise exc.PermissionDenied(_("You don't have permisions to see this project users."))
|
raise exc.PermissionDenied(_("You don't have permisions to see this project users."))
|
||||||
|
|
||||||
|
if request.user.is_superuser:
|
||||||
|
return queryset
|
||||||
|
|
||||||
return []
|
return []
|
||||||
|
|
||||||
|
|
||||||
|
@ -61,11 +65,21 @@ class UsersViewSet(ModelCrudViewSet):
|
||||||
permission_classes = (permissions.UserPermission,)
|
permission_classes = (permissions.UserPermission,)
|
||||||
serializer_class = serializers.UserSerializer
|
serializer_class = serializers.UserSerializer
|
||||||
queryset = models.User.objects.all()
|
queryset = models.User.objects.all()
|
||||||
filter_backends = (MembersFilterBackend,)
|
|
||||||
|
|
||||||
def create(self, *args, **kwargs):
|
def create(self, *args, **kwargs):
|
||||||
raise exc.NotSupported()
|
raise exc.NotSupported()
|
||||||
|
|
||||||
|
def list(self, request, *args, **kwargs):
|
||||||
|
self.object_list = MembersFilterBackend().filter_queryset(request, self.get_queryset(), self)
|
||||||
|
|
||||||
|
page = self.paginate_queryset(self.object_list)
|
||||||
|
if page is not None:
|
||||||
|
serializer = self.get_pagination_serializer(page)
|
||||||
|
else:
|
||||||
|
serializer = self.get_serializer(self.object_list, many=True)
|
||||||
|
|
||||||
|
return Response(serializer.data)
|
||||||
|
|
||||||
@list_route(methods=["POST"])
|
@list_route(methods=["POST"])
|
||||||
def password_recovery(self, request, pk=None):
|
def password_recovery(self, request, pk=None):
|
||||||
username_or_email = request.DATA.get('username', None)
|
username_or_email = request.DATA.get('username', None)
|
||||||
|
|
|
@ -44,7 +44,7 @@ def test_user_retrieve(client, data):
|
||||||
]
|
]
|
||||||
|
|
||||||
results = helper_test_http_method(client, 'get', url, None, users)
|
results = helper_test_http_method(client, 'get', url, None, users)
|
||||||
assert results == [200, 200, 200, 200]
|
assert results == [401, 200, 403, 200]
|
||||||
|
|
||||||
|
|
||||||
def test_user_update(client, data):
|
def test_user_update(client, data):
|
||||||
|
@ -82,21 +82,21 @@ def test_user_list(client, data):
|
||||||
|
|
||||||
response = client.get(url)
|
response = client.get(url)
|
||||||
users_data = json.loads(response.content.decode('utf-8'))
|
users_data = json.loads(response.content.decode('utf-8'))
|
||||||
assert len(users_data) == 3
|
assert len(users_data) == 0
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
|
|
||||||
client.login(data.registered_user)
|
client.login(data.registered_user)
|
||||||
|
|
||||||
response = client.get(url)
|
response = client.get(url)
|
||||||
users_data = json.loads(response.content.decode('utf-8'))
|
users_data = json.loads(response.content.decode('utf-8'))
|
||||||
assert len(users_data) == 3
|
assert len(users_data) == 0
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
|
|
||||||
client.login(data.other_user)
|
client.login(data.other_user)
|
||||||
|
|
||||||
response = client.get(url)
|
response = client.get(url)
|
||||||
users_data = json.loads(response.content.decode('utf-8'))
|
users_data = json.loads(response.content.decode('utf-8'))
|
||||||
assert len(users_data) == 3
|
assert len(users_data) == 0
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
|
|
||||||
client.login(data.superuser)
|
client.login(data.superuser)
|
||||||
|
|
Loading…
Reference in New Issue