Esempio n. 1
0
    def test_profile_with_expired_session(self, fetch_mock):
        db_user = User(
            id=1,
            name='Joao',
            email='*****@*****.**',
            password='******',
            token=hashlib.sha1('token').hexdigest(),
            last_login=datetime(2016, 2, 15, 19, 20, 21),
        )
        fetch_mock.return_value = db_user

        with self.assertRaises(InvalidSession):
            get_profile('1', 'token')
Esempio n. 2
0
def profile(user_id):
    if 'X-Token' not in request.headers:
        return api_error('Obrigatório uso do header X-Token para usar este endpoint', 400)

    token = request.headers['X-Token']

    try:
        user_data = get_profile(user_id, token)
    except AuthorizationError as exc:
        return api_error(exc.message, 401)

    return user_data, 200
Esempio n. 3
0
    def test_successful_profile(self, fetch_mock):
        db_user = User(
            id=1,
            name='Joao',
            email='*****@*****.**',
            password='******',
            token=hashlib.sha1('token').hexdigest(),
            created=datetime(2016, 2, 15, 19, 20, 21),
            modified=datetime(2016, 2, 15, 19, 20, 21),
            last_login=datetime(2016, 2, 15, 19, 20, 21),
        )
        fetch_mock.return_value = db_user

        user_data = get_profile('1', 'token')

        self.assertEqual(user_data['id'], db_user.id)
Esempio n. 4
0
    def test_profile_with_inexistent_token(self, fetch_mock):
        fetch_mock.side_effect = NoResultFound

        with self.assertRaises(InvalidToken):
            get_profile('1', 'token')