2021-11-25 14:17:02 -09:00
|
|
|
from pytest import fixture
|
|
|
|
from starlette.testclient import TestClient
|
|
|
|
|
|
|
|
from mealie.core.config import get_app_settings
|
|
|
|
from tests import utils
|
|
|
|
|
|
|
|
|
|
|
|
@fixture(scope="session")
|
2022-04-10 18:13:38 -08:00
|
|
|
def admin_token(api_client: TestClient, api_routes: utils.AppRoutes):
|
2021-11-25 14:17:02 -09:00
|
|
|
settings = get_app_settings()
|
|
|
|
|
2022-04-20 20:07:46 +02:00
|
|
|
form_data = {"username": settings.DEFAULT_EMAIL, "password": settings.DEFAULT_PASSWORD}
|
2021-11-25 14:17:02 -09:00
|
|
|
return utils.login(form_data, api_client, api_routes)
|
|
|
|
|
|
|
|
|
|
|
|
@fixture(scope="session")
|
|
|
|
def admin_user(api_client: TestClient, api_routes: utils.AppRoutes):
|
|
|
|
settings = get_app_settings()
|
|
|
|
|
2022-04-20 20:07:46 +02:00
|
|
|
form_data = {"username": settings.DEFAULT_EMAIL, "password": settings.DEFAULT_PASSWORD}
|
2021-11-25 14:17:02 -09:00
|
|
|
|
|
|
|
token = utils.login(form_data, api_client, api_routes)
|
|
|
|
|
|
|
|
user_data = api_client.get(api_routes.users_self, headers=token).json()
|
|
|
|
assert token is not None
|
|
|
|
|
|
|
|
assert user_data.get("admin") is True
|
|
|
|
assert user_data.get("groupId") is not None
|
|
|
|
assert user_data.get("id") is not None
|
|
|
|
|
|
|
|
try:
|
|
|
|
yield utils.TestUser(
|
2021-12-04 14:18:46 -09:00
|
|
|
_group_id=user_data.get("groupId"),
|
2021-11-25 14:17:02 -09:00
|
|
|
user_id=user_data.get("id"),
|
2022-08-13 13:18:12 -08:00
|
|
|
password=settings.DEFAULT_PASSWORD,
|
2022-03-15 23:28:42 +01:00
|
|
|
username=user_data.get("username"),
|
2021-11-25 14:17:02 -09:00
|
|
|
email=user_data.get("email"),
|
|
|
|
token=token,
|
|
|
|
)
|
|
|
|
finally:
|
|
|
|
# TODO: Delete User after test
|
|
|
|
pass
|