def test_error_params_update_user(admin_client): """ ... """ oldvalues = UserHeavySerializer(User.objects.get(id=1)) newdata: Dict[str, Any] = { 'usernames': 'NEW', 'first_namesss': 'new name', } response = admin_client.put('/api/user/' + str(1) + '/', newdata) newvalues = UserHeavySerializer(User.objects.get(id=1)) assert response.status_code == 400 assert newvalues.data == oldvalues.data
def test_user_update_profile_invalid_params(admin_client): """ ... """ user_id: int = 1 oldvalues = UserHeavySerializer(User.objects.get(id=user_id)) newdata: Dict[str, Any] = { 'usernames': 'NEW', 'first_names': 'new name', } response = admin_client.post('/api/user/profile/', newdata) newvalues = UserHeavySerializer(User.objects.get(id=user_id)) assert response.status_code == 400 assert newvalues.data == oldvalues.data
def get(self, request, pk: Union[int, str], format=None): """ ... """ user = self.get_object(pk) response = UserHeavySerializer(user) return Response(response.data, status=status.HTTP_200_OK)
def test_get_all_user(admin_client): """ ... """ response = admin_client.get('/api/users/') serializer = UserHeavySerializer(User.objects.all(), many=True) assert response.status_code == 200 assert serializer.data == response.data
def test_get_user(admin_client): """ ... """ response = admin_client.get('/api/user/' + str(1) + '/') serializer = UserHeavySerializer(User.objects.get(id=1)) assert response.status_code == 200 assert serializer.data == response.data
def post(self, request, format=None): """ ... """ response = self.serializer(request.user, data=request.data) if response.is_valid(): result = response.save() res = UserHeavySerializer(result) return Response(res.data, status=status.HTTP_200_OK) return Response(response.errors, status=status.HTTP_400_BAD_REQUEST)
def put(self, request, pk: Union[int, str], format=None): """ ... """ user = self.get_object(pk) response = self.serializer(user, data=request.data) if response.is_valid(): result = response.save() res = UserHeavySerializer(result) return Response(res.data, status=status.HTTP_200_OK) return Response(response.errors, status=status.HTTP_400_BAD_REQUEST)
def post(self, request, *args, **kwargs): """ ... """ serializer = self.serializer_class( data=request.data, context={'request': request}, ) serializer.is_valid(raise_exception=True) user = serializer.validated_data['user'] user_serializer = UserHeavySerializer(user) token, _ = Token.objects.get_or_create(user=user) return Response({ 'token': token.key, 'user': user_serializer.data }, status=status.HTTP_200_OK)
def test_create_user(admin_client): """ ... """ data: Dict[str, Any] = { 'username': '******', 'email': '*****@*****.**', 'password': '******', 'first_name': 'name', 'last_name': 'name2', 'is_staff': False, } response = admin_client.post('/api/users/', data) serializer = UserHeavySerializer( User.objects.get(id=response.data['id']), ) assert response.status_code == 201 assert serializer.data == response.data
def test_success_request_jwt(public_client): """ ... """ data: Dict[str, str] = { 'email': '*****@*****.**', 'password': '******', } response = public_client.post('/api/jwt-auth/', data) assert response.status_code == 200 decoded = jwt.decode(response.data, settings.KEY_HS256, algorithms='HS256') user = User.objects.get(email=data['email']) serialer = UserHeavySerializer(user) token = Token.objects.get(user_id=user.id) assert decoded['token'] == token.key assert decoded['user'] == serialer.data