def signup(request): if request.method != 'POST': return HttpResponseNotAllowed(['POST']) try: body = get_body_as_json(request.body) username = retrieve_username(body) password = retrieve_password(body) email = retrieve_email(body) if username == '' or password == '' or email == '': return HttpResponseBadRequest() except: return HttpResponseBadRequest() try: new_user = Users(username=username, password=password, email=email) user_id = new_user.pk new_user.save() except: return HttpResponseForbidden() joined = get_user(username).joined.__str__() token = get_token_as_string(username, user_id, joined) response = JsonResponse({'token': token}) return response # # q = request.GET.get('q')
def test_login(self): u = Users(username='******', email='*****@*****.**', password='******') u.save() url = reverse('login') data = {'email': '*****@*****.**', 'password': '******'} response = self.client.post(url, data, format='json') self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_update_username_without_login(self): u = Users(id=6, username='******', email='*****@*****.**', password='******') u.save() url = reverse('show-user', args=[6]) data = {'username': '******'} response = self.client.put(url, data, format='json') self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_unfollow_user_without_login(self): u = Users(id=14, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=15, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('follow', args=[15]) response = self.client.delete(url) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_follow_user_without_login(self): u = Users(id=10, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=11, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('follow', args=[11]) response = self.client.post(url) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_delete_user_with_login(self): u = Users(id=9, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('login') data = {'email': '*****@*****.**', 'password': '******'} response = self.client.post(url, data, format='json') if self.assertEqual(response.status_code, status.HTTP_200_OK): url = reverse('show-user', args=[9]) response = self.client.delete(url, data, format='json') self.assertEqual(response.status_code, status.HTTP_200_OK)
def register(): """Register a user""" data = { 'username': request.json.get('username'), 'email': request.json.get('email'), 'password': request.json.get('password'), } check_valid(RegisterUserSchema().validate(data)) user = Users( username=data['username'], email=data['email'], password=data['password']) user.save() return jsonify({'message': 'Registered Successfully.'}), 201
def test_unfollow_user_with_login_without_followed_fail(self): u = Users(id=16, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=17, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('login') data = {'email': '*****@*****.**', 'password': '******'} response = self.client.post(url, data, format='json') if self.assertEqual(response.status_code, status.HTTP_200_OK): url = reverse('follow', args=[17]) response = self.client.post(url) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_follow_user_with_login(self): u = Users(id=12, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=13, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('login') data = {'email': '*****@*****.**', 'password': '******'} response = self.client.post(url, data, format='json') if self.assertEqual(response.status_code, status.HTTP_200_OK): url = reverse('follow', args=[13]) response = self.client.post(url) self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_unfollow_user_with_login_with_followed_success(self): u = Users(id=18, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=19, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('login') data = {'email': '*****@*****.**', 'password': '******'} response = self.client.post(url, data, format='json') if self.assertEqual(response.status_code, status.HTTP_200_OK): url = reverse('follow', args=[19]) response = self.client.post(url) if self.assertEqual(response.status_code, status.HTTP_200_OK): url = reverse('follow', args=[19]) response = self.client.delete(url) self.assertEqual(response.status_code, status.HTTP_200_OK)
def run(): file = open('scripts/test.json') # Fetching the json file data = json.load(file) for i in data['members']: user = Users() # Creating an user object user.id = i['id'] user.email = i['email'] user.tz = i['tz'] user.real_name = i['real_name'] user.save() for j in i['activity_periods']: activity = Activities() datetime_object = datetime.strptime(j['start_time'], '%b %d %Y %I:%M%p') # converting given datetime format activity.start_time = datetime_object datetime_object2 = datetime.strptime(j['end_time'], '%b %d %Y %I:%M%p') activity.end_time = datetime_object2 activity.user = user activity.save()
def test_update_user_with_login(self): u = Users(id=7, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() url = reverse('login') data = {'email': '*****@*****.**', 'password': '******'} response = self.client.post(url, data, format='json') if self.assertEqual(response.status_code, status.HTTP_200_OK): url = reverse('show-user', args=[7]) data = {'username': '******', 'email':'*****@*****.**', 'password':'******', 'birthday':'1994-04-13', 'company':'Givery', 'location':'Tokyo'} response = self.client.put(url, data, format='json') self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(Users.objects.get().username, 'user7') self.assertEqual(Users.objects.get().email, '*****@*****.**') self.assertEqual(Users.objects.get().password, 'password7') self.assertEqual(Users.objects.get().birthday, datetime.date(1994, 4, 13)) self.assertEqual(Users.objects.get().company, 'Givery') self.assertEqual(Users.objects.get().location, 'Tokyo')
class BaseTestCase(TestCase): """A base test case for flask-tracking.""" def setUp(self): self.app = create_app('testing') self.client = self.app.test_client() self.app.app_context().push() with self.app.app_context(): db.create_all() self.user1 = Users( username='******', email='*****@*****.**', password='******') self.user1.save() self.user2 = Users( username='******', email='*****@*****.**', password='******') self.user2.save() self.project1 = Projects( name="User1's Project", description='sample project', contract_value='5000', percentage_return='22', start_date=datetime.date.today(), end_date=datetime.date.today()+datetime.timedelta(days=10), user_email=self.user1.email) self.project1.save() self.project2 = Projects( name="User2's Project", description='sample project', contract_value='3000', percentage_return='10', start_date=datetime.date.today(), end_date=datetime.date.today()+datetime.timedelta(days=10), user_email=self.user2.email) self.project2.save() self.bid = Bids( amount='200', date=datetime.date.today(), user_email=self.user1.email, project_id=self.project2.id,) self.bid.save() def tearDown(self): with self.app.app_context(): db.session.remove() db.drop_all()
def login(request): form = LoginForm(request.POST) if form.is_valid(): captcha_from_user = form.cleaned_data['captcha'] captcha_from_sess = request.session.get('captcha', '') if captcha_from_sess.lower() != captcha_from_user.lower(): data = {'code': 302, 'message': '验证码不匹配'} else: tel = form.cleaned_data['tel'] user = Users.objects.filter(u_tel=tel).first() if user: code_from_session = request.session.get('tel') code_from_user = request.POST.get('phoneCode') if code_from_session == code_from_user: request.session['user'] = user data = {'code': 200, 'message': '校验成功'} else: hint = '用户名或验证码错误' data = {'code': 300, 'message': hint} else: with atomic(): wallet = Wallet() wallet.save() user = Users() user.id = wallet user.u_tel = tel user.u_nickname = '用户{}'.format(uuid.uuid4()) user.save() role = Roles.objects.filter(id=1).first() user_role = Userrole() user_role.role = role user_role.user = user user_role.save() request.session['user'] = user data = {'code': 201, 'message': '用户注册成功,成功登陆'} else: hint = '请输入有效的登录信息' data = {'code': 301, 'message': hint} return JsonResponse(data)
def test_delete_username_without_login(self): u = Users(id=8, username='******', email='*****@*****.**', password='******') u.save() url = reverse('show-user', args=[8]) response = self.client.put(url) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_show_user(self): u = Users(id=5, username='******', email='*****@*****.**', password='******') u.save() url = reverse('show-user', args=[5]) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_pager_without_param(self): u = Users(id=20, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=21, username='******', email='*****@*****.**', password='******', birthday='1991-04-17') u.save() u = Users(id=22, username='******', email='*****@*****.**', password='******', birthday='1992-04-17') u.save() u = Users(id=23, username='******', email='*****@*****.**', password='******', birthday='1993-04-17') u.save() u = Users(id=24, username='******', email='*****@*****.**', password='******', birthday='1994-04-17') u.save() u = Users(id=25, username='******', email='*****@*****.**', password='******', birthday='1995-04-17') u.save() u = Users(id=26, username='******', email='*****@*****.**', password='******', birthday='1996-04-17') u.save() u = Users(id=27, username='******', email='*****@*****.**', password='******', birthday='1991-04-17') u.save() u = Users(id=28, username='******', email='*****@*****.**', password='******', birthday='1990-04-17') u.save() u = Users(id=29, username='******', email='*****@*****.**', password='******', birthday='1990-04-13') u.save() u = Users(id=30, username='******', email='*****@*****.**', password='******', birthday='1991-04-13') u.save() url = reverse('user-list') response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing20') url = reverse('user-list', kwargs={'offset':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '5') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing25') url = reverse('user-list', kwargs={'offset': 0, 'limit':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '5') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing20') url = reverse('user-list', kwargs={'offset': 2, 'limit':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '3') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing22') url = reverse('user-list', kwargs={'limit':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '5') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing20') url = reverse('user-list', kwargs={'orderBy':'birthday'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['birthday'], '1990-04-13') url = reverse('user-list', kwargs={'orderBy':'birthday', 'order': 'desc'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['birthday'], '1997-04-17') """ Add new User 'testing30' to test filtering option """ u = Users(id=31, username='******', email='*****@*****.**', password='******', birthday='1991-04-13') u.save() url = reverse('user-list', kwargs={'filterOn':'username'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '12') url = reverse('user-list', kwargs={'filterOn':'username', 'filterValue': 'testing30'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '2') self.assertEqual(response['total_count'], '12')
def test_pager_without_param(self): u = Users(id=20, username='******', email='*****@*****.**', password='******', birthday='1997-04-17') u.save() u = Users(id=21, username='******', email='*****@*****.**', password='******', birthday='1991-04-17') u.save() u = Users(id=22, username='******', email='*****@*****.**', password='******', birthday='1992-04-17') u.save() u = Users(id=23, username='******', email='*****@*****.**', password='******', birthday='1993-04-17') u.save() u = Users(id=24, username='******', email='*****@*****.**', password='******', birthday='1994-04-17') u.save() u = Users(id=25, username='******', email='*****@*****.**', password='******', birthday='1995-04-17') u.save() u = Users(id=26, username='******', email='*****@*****.**', password='******', birthday='1996-04-17') u.save() u = Users(id=27, username='******', email='*****@*****.**', password='******', birthday='1991-04-17') u.save() u = Users(id=28, username='******', email='*****@*****.**', password='******', birthday='1990-04-17') u.save() u = Users(id=29, username='******', email='*****@*****.**', password='******', birthday='1990-04-13') u.save() u = Users(id=30, username='******', email='*****@*****.**', password='******', birthday='1991-04-13') u.save() url = reverse('user-list') response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing20') url = reverse('user-list', kwargs={'offset':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '5') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing25') url = reverse('user-list', kwargs={'offset': 0, 'limit':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '5') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing20') url = reverse('user-list', kwargs={'offset': 2, 'limit':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '3') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing22') url = reverse('user-list', kwargs={'limit':5}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '5') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['username'], 'testing20') url = reverse('user-list', kwargs={'orderBy':'birthday'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['birthday'], '1990-04-13') url = reverse('user-list', kwargs={'orderBy':'birthday', 'order': 'desc'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '11') self.assertEqual(response.data[0]['birthday'], '1997-04-17') """ Add new User 'testing30' to test filtering option """ u = Users(id=31, username='******', email='*****@*****.**', password='******', birthday='1991-04-13') u.save() url = reverse('user-list', kwargs={'filterOn':'username'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '10') self.assertEqual(response['total_count'], '12') url = reverse('user-list', kwargs={'filterOn':'username', 'filterValue': 'testing30'}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response['count'], '2') self.assertEqual(response['total_count'], '12')