Пример #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
 def test_delete_user(self):
     self.login()
     user = self.create_user(name='leito')
     url = url_for('auth.delete_user', item_id=user.id, _external=True)
     response = self.client.delete(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token),
     )
     self.assertEqual(response.status_code, 204)
     User.remove_fake(item=user)
Пример #3
0
 def test_deactivate_user(self):
     self.login()
     user = self.create_user(name='leito')
     url = url_for('auth.deactivate_user', item_id=user.id, _external=True)
     response = self.client.put(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 200)
     self.assertIsNotNone(response.json['data']['message'])
     User.remove_fake(item=user)
Пример #4
0
 def test_change_username_no_username(self):
     user = self.create_user(name='leito')
     self.login()
     url = url_for('auth.change_username', item_id=user.id, _external=True)
     data = {}
     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, 400)
     self.assertTrue(response.json['error'] == 'bad request')
     User.remove_fake(item=user)
Пример #5
0
 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)
Пример #6
0
 def test_change_username(self):
     user = self.create_user(name='leito')
     self.login()
     url = url_for('auth.change_username', item_id=user.id, _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.remove_fake(item=user)
Пример #7
0
 def test_add_role_to_user_invalid_role_name(self):
     user = self.create_user(name='leito')
     role = 'invalid_role'
     self.login()
     url = url_for('auth.add_role_to_user',
                   item_id=user.id,
                   role_name=role,
                   _external=True)
     response = self.client.post(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token, ),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 404)
     self.assertTrue(response.json['error'] == 'not found')
     User.remove_fake(item=user)
Пример #8
0
 def test_remove_role_from_user_with_one_role(self):
     self.login()
     user = self.create_user(name='leito')
     role = user.list_roles_names()[0]
     url = url_for('auth.remove_role_from_user',
                   item_id=user.id,
                   role_name=role,
                   _external=True)
     response = self.client.delete(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token, ),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 400)
     self.assertTrue(response.json['error'] == 'bad request')
     User.remove_fake(item=user)
Пример #9
0
 def test_remove_role_from_user(self):
     user = self.create_user(name='leito')
     role = Role.create_with_role_group_name(name='test',
                                             description='Test',
                                             role_group_name='user')
     user.add_role(role_name='test')
     self.login()
     url = url_for('auth.remove_role_from_user',
                   item_id=user.id,
                   role_name=role.name,
                   _external=True)
     response = self.client.delete(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token, ),
     )
     self.assertEqual(response.status_code, 204)
     User.remove_fake(item=user)
     Role.remove_fake(item=role)
Пример #10
0
 def test_add_role_to_user(self):
     user = self.create_user(name='leito')
     role = Role.create_with_role_group_name(name='test',
                                             description='Test',
                                             role_group_name='user')
     self.login()
     url = url_for('auth.add_role_to_user',
                   item_id=user.id,
                   role_name=role.name,
                   _external=True)
     response = self.client.post(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token, ),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 201)
     self.assertIsNotNone(response.json['data']['message'])
     User.remove_fake(item=user)
     Role.remove_fake(item=role)
Пример #11
0
 def test_remove_role_from_user_doesnt_have_role(self):
     self.login()
     user = self.create_user(name='leito')
     role = Role.create_with_role_group_name(name='test',
                                             description='Test',
                                             role_group_name='user')
     url = url_for('auth.remove_role_from_user',
                   item_id=user.id,
                   role_name=role.name,
                   _external=True)
     response = self.client.delete(
         url,
         content_type=self.JSON,
         headers=self.set_api_headers(token=self.auth_token, ),
     )
     response.json = self.get_json_response(response)
     self.assertEqual(response.status_code, 400)
     self.assertTrue(response.json['error'] == 'bad request')
     User.remove_fake(item=user)
     Role.remove_fake(item=role)