Exemple #1
0
 def post(self, request):
     serializer = UserSerializer(data=request.data)
     if serializer.is_valid(raise_exception=ValueError):
         serializer.create(validated_data=request.data)
         return Response({'message': 'User registered succesfully'},
                         status=status.HTTP_201_CREATED)
     return Response(
         {
             "error": "True",
             "error_msg": serializer.error_messages
         },
         status=status.HTTP_400_BAD_REQUEST)
Exemple #2
0
class UserSerializerTest(SerializerTest):
    def setUp(self):
        self.serializer = UserSerializer()

    def test_user_creation(self):
        user = self.serializer.create(self.USER_DATA)
        auth_role = AuthRole.get_auth_role(user.pk)

        self.assertIsInstance(user, User)
        self.assertEqual(auth_role,
                         AuthRole.RoleTypes.USER,
                         msg='Auth role is user')
        self.assertEqual(user.first_name, self.USER_DATA.get('first_name'))
        self.assertEqual(user.last_name, self.USER_DATA.get('last_name'))
        self.assertEqual(user.email, self.USER_DATA.get('email'))
        self.assertEqual(user.username, self.USER_DATA.get('username'))
        self.assertEqual(user.check_password(self.USER_DATA.get('password')),
                         True)

    def test_user_update(self):
        manager = self.create_manager()
        manager = self.serializer.update(manager, self.TEST_DATA)  # type: User
        manager_role = AuthRole.get_auth_role(manager.pk)

        self.assertIsInstance(manager, User)
        self.assertEqual(manager_role,
                         AuthRole.RoleTypes.MANAGER,
                         msg='Auth role is manager')
        self.assertEqual(manager.first_name, self.TEST_DATA.get('first_name'))
        self.assertEqual(manager.last_name, self.TEST_DATA.get('last_name'))
        self.assertEqual(manager.email, self.TEST_DATA.get('email'))
        self.assertEqual(manager.username, self.TEST_DATA.get('username'))
        self.assertEqual(
            manager.check_password(self.TEST_DATA.get('password')), True)
Exemple #3
0
def signup(request):
    data = request.data
    serializer = UserSerializer(data=data)
    if serializer.is_valid():
        user = serializer.create(data)
        token = Token.objects.get(user=user)
        response = {"username": user.username, "token":str(token)}
        return Response(response, status=201)
    return Response(serializer.errors, status=400)
def test_create_user():
    serializer = UserSerializer()
    with pytest.raises(ValueError):
        serializer.create({})