コード例 #1
0
    def test_register(self):
        response = self.login(username_or_email='bitson', password='******')
        user_role_id = UserRole.get_max_id()  # Para no aumentar la secuencia
        #  de las relaciones por demás sin sentido.
        self.token = response.json['data']['token']

        url = url_for('auth.register', _external=True)
        data = {
            'username': '******',
            'email': '*****@*****.**',
            'password': '******',
            'role': 'user'
        }
        response = self.client.post(
            url,
            content_type=self.JSON,
            headers=self.set_api_headers(token=self.token),
            data=json.dumps(data))
        response.json = self.get_json_response(response)
        self.assertEqual(response.status_code, 201)
        self.assertIsNotNone(response.json['data']['token'])
        self.assertIsNotNone(response.json['data']['confirm_email_url'])
        self.assertIsNotNone(response.json['data']['expiration'])
        self.assertIsNotNone(User.get_by(username=data['username']))
        user = User.get_by(username=data['username'])
        UserRole.set_sequence_value(value=user_role_id)
        User.remove_fake(item=user)
コード例 #2
0
ファイル: test_change_email.py プロジェクト: lecovi/flaskngo
 def test_change_email_request_invalid_email(self):
     user = User.get_by(id=1)
     token = user.generate_auth_token(3600)
     url = url_for('auth.change_email_request', _external=True)
     data = {'new_email': '*****@*****.**'}
     response = self.client.post(url,
                                 content_type=self.JSON,
                                 headers=self.set_api_headers(token=token),
                                 data=json.dumps(data))
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 400)
     self.assertTrue(response.json['error'] == 'bad request')
コード例 #3
0
ファイル: test_change_email.py プロジェクト: lecovi/flaskngo
 def test_change_email(self):
     user = User.get_by(id=1)
     user_to_confirm = self.create_user(name='leito')
     user_to_confirm.set_not_confirmed()
     token = user.generate_email_change_token(user_to_confirm.email, 3600)
     url = url_for('auth.change_email', email_token=token, _external=True)
     response = self.client.get(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 200)
     self.assertIsNotNone(response.json['data']['message'])
     User.remove_fake(item=user_to_confirm)
コード例 #4
0
 def test_change_my_username(self):
     user = User.get_by(username='******')
     self.login()
     url = url_for('auth.change_my_username', _external=True)
     data = {'username': "".join([user.username, '_edited'])}
     response = self.client.put(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token, ),
         data=json.dumps(data),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 200)
     self.assertIsNotNone(response.json['data']['message'])
     user.username, _ = user.username.split('_')
     db.session.commit()
コード例 #5
0
 def test_reset_password(self):
     user = User.get_by(id=1)
     token = user.generate_reset_token(3600)
     url = url_for('auth.reset_password', token=token, _external=True)
     response = self.client.get(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 200)
     self.assertIsNotNone(response.json['data']['token'])
     self.assertIsNotNone(response.json['data']['expiration'])
     self.assertTrue(response.json['data']['url'] == url_for(
         'auth.change_password', _external=True))
     self.assertIsNotNone(response.json['data']['message'])
コード例 #6
0
ファイル: test_change_email.py プロジェクト: lecovi/flaskngo
 def test_change_email_request(self):
     user = User.get_by(id=1)
     token = user.generate_auth_token(3600)
     url = url_for('auth.change_email_request', _external=True)
     data = {'new_email': '*****@*****.**'}
     response = self.client.post(url,
                                 content_type=self.JSON,
                                 headers=self.set_api_headers(token=token),
                                 data=json.dumps(data))
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 201)
     self.assertIsNotNone(response.json['data']['token'])
     self.assertIsNotNone(response.json['data']['confirm_email_url'])
     self.assertIsNotNone(response.json['data']['expiration'])
     user.set_confirmed(commit=False)
     user.email = '*****@*****.**'
     db.session.commit()
コード例 #7
0
 def test_change_password(self):
     user = User.get_by(username='******')
     self.login(username_or_email=user.email)
     headers = self.set_api_headers(token=self.auth_token)
     data = {'new_password': '******'}
     url = url_for('auth.change_password', _external=True)
     response = self.client.post(
         url,
         content_type=self.JSON,
         headers=headers,
         data=json.dumps(data),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 200)
     self.assertIsNotNone(response.json['data']['message'])
     user.password = '******'
     db.session.commit()