def test_clients_detail_resource__on_delete(db_session, client, admin): # creates the object to be updated original_mock_data = util.get_random_user_data() # saves the object to be updated instance user_client = Client(**original_mock_data) user_client.set_password(original_mock_data.get('password')) user_client.save() user_client_db = Client.get_by_email(user_client.email) assert user_client_db is not None # creates the request response = client.simulate_delete( '/v1/clients/{client_id}'.format(client_id=user_client.id), headers={'Authorization': 'Basic {}'.format(admin.basic_password)}, ) json.loads(response.content).get('data') user_client_db = Client.get_by_email(user_client.email) assert user_client not in db_session assert user_client_db is None
def test_clients_detail_resource__on_put(db_session, client, admin): original_mock_data = util.get_random_user_data() # saves the object to be updated instance user_client = Client(**original_mock_data) user_client.set_password(original_mock_data.get('password')) user_client.save() mock_data = { "first_name": "{} {}".format(original_mock_data.get('first_name'), util.provider.personal.name()), } response = client.simulate_put( '/v1/clients/{client_id}'.format(client_id=user_client.id), headers={'Authorization': 'Basic {}'.format(admin.basic_password)}, body=json.dumps(mock_data)) data = json.loads(response.content).get('data') assert response.status == falcon.HTTP_200 assert data.get('first_name') == mock_data.get('first_name') assert data.get('first_name') != original_mock_data.get('first_name') assert response.status == falcon.HTTP_OK assert data.get('email') == user_client.email assert data.get('first_name') == user_client.first_name assert data.get('last_name') == user_client.last_name assert data.get('user_type') == user_client.user_type.value assert data.get('code') == user_client.code assert data.get('password', None) is None assert data.get('seed', None) is None mock_data = { "last_name": "{} {}".format(original_mock_data.get('last_name'), util.provider.personal.name()), } response = client.simulate_put( '/v1/clients/{client_id}'.format(client_id=user_client.id), headers={'Authorization': 'Basic {}'.format(admin.basic_password)}, body=json.dumps(mock_data)) data = json.loads(response.content).get('data') assert response.status == falcon.HTTP_200 assert data.get('last_name') == mock_data.get('last_name') assert data.get('last_name') != original_mock_data.get('last_name') assert data.get('email') == user_client.email assert data.get('first_name') == user_client.first_name assert data.get('last_name') == user_client.last_name assert data.get('user_type') == user_client.user_type.value assert data.get('code') == user_client.code assert data.get('password', None) is None assert data.get('seed', None) is None
def user_client(): client = Client(**dict( email='*****@*****.**', first_name='Client', last_name='Client')) client.set_password('admin') client.save() setattr( client, 'basic_password', b64encode("{}:{}".format(client.email, 'admin').encode()).decode("ascii")) yield client
def test_client_model(db_session, conf_logger): users_data = [util.get_random_user_data() for idx in range(8)] for user_data in users_data: user = Client(**user_data) user.set_password(user.password) user.save() for idx, user in enumerate(list(Client.get_all())): assert users_data[idx].get('email') == user.email assert users_data[idx].get('first_name') == user.first_name assert users_data[idx].get('last_name') == user.last_name assert UsersEnum.client == user.user_type
def test_clients_detail_resource__on_get(db_session, client, admin): mock_data = util.get_random_user_data() user_client = Client(**mock_data) user_client.save() response = client.simulate_get( '/v1/clients/{client_id}'.format(client_id=user_client.id), headers={'Authorization': 'Basic {}'.format(admin.basic_password)}, ) data = json.loads(response.content).get('data') user_client = User.get_by_id(data.get('id')) assert response.status == falcon.HTTP_OK assert data.get('email') == user_client.email assert data.get('first_name') == user_client.first_name assert data.get('last_name') == user_client.last_name assert data.get('user_type') == user_client.user_type.value assert data.get('code') == user_client.code assert data.get('password', None) is None assert data.get('seed', None) is None
def create_random_client(): data = get_random_user_data() client = Client(**data) client.save() return client