增加用户密码修改成功的API测试,以及增加用户邮箱字段并做了相应的API测试,目前的account/view.py测试覆盖率为100%

This commit is contained in:
hohoTT
2015-08-05 20:11:25 +08:00
parent 17b44800ca
commit 117a6d3525
6 changed files with 99 additions and 8 deletions

View File

@@ -7,7 +7,7 @@ from utils.shortcuts import serializer_invalid_response, error_response, success
from .models import User
from .serializers import UserLoginSerializer, UsernameCheckSerializer, UserRegisterSerializer, \
UserChangePasswordSerializer
UserChangePasswordSerializer, EmailCheckSerializer
class UserLoginAPIView(APIView):
@@ -45,7 +45,13 @@ class UserRegisterAPIView(APIView):
User.objects.get(username=data["username"])
return error_response(u"用户名已存在")
except User.DoesNotExist:
user = User.objects.create(username=data["username"], real_name=data["real_name"])
pass
try:
User.objects.get(email=data["email"])
return error_response(u"该邮箱已被注册,请换其他邮箱进行注册")
except User.DoesNotExist:
user = User.objects.create(username=data["username"], real_name=data["real_name"],
email=data["email"])
user.set_password(data["password"])
user.save()
return success_response(u"注册成功!")
@@ -89,4 +95,21 @@ class UsernameCheckAPIView(APIView):
except User.DoesNotExist:
return success_response(False)
else:
return serializer_invalid_response(serializer)
return serializer_invalid_response(serializer)
class EmailCheckAPIView(APIView):
def post(self, request):
"""
检测邮箱是否存在存在返回True不存在返回False
---
request_serializer: EmailCheckSerializer
"""
serializer = EmailCheckSerializer(data=request.DATA)
if serializer.is_valid():
try:
User.objects.get(email=serializer.data["email"])
return success_response(True)
except User.DoesNotExist:
return success_response(False)
else:
return serializer_invalid_response(serializer)