Cleaning things up for an additional user.

Signed-off-by: Cliff Hill <clifford.hill@gsa.gov>
This commit is contained in:
Cliff Hill
2025-02-13 11:02:02 -05:00
parent 2f1acec0f5
commit 34706ee839

View File

@@ -1,9 +1,13 @@
import datetime
import os
from decorator import contextmanager
import pytest
from axe_core_python.sync_playwright import Axe
from app.notify_client.user_api_client import user_api_client
from app.notify_client.service_api_client import service_api_client
E2E_TEST_URI = os.getenv("NOTIFY_E2E_TEST_URI")
@@ -40,11 +44,39 @@ def check_axe_report(page):
], f"Accessibility violation: {violation}"
# Need e2e service defined here?
@pytest.fixture
def admin_user():
user = user_api_client.register_user(
"E2E Admin Test", "admin@nowhere.huh", "1234567890", "password", "sms"
)
def default_service(browser):
current_date_time = datetime.datetime.now()
now=current_date_time.strftime("%m/%d/%Y %H:%M:%S")
browser_type = browser.browser_type.name
service_name = f"E2E Federal Test Service {now} - {browser_type}"
default_user = user_api_client.get_user_by_email(os.getenv("NOTIFY_E2E_TEST_EMAIL"))
service = service_api_client.create_service(service_name, "federal", os.environ["DEFAULT_SERVICE_LIMIT"], True, default_user.id, default_user.email_address)
yield service
service_api_client.archive_service(service.id, None)
@contextmanager
def _set_up_user(default_service, name, email_addr, phone, password, auth_type, permissions, folder_permissions):
user = user_api_client.get_user_by_email_or_none(email_addr)
if user is None:
user = user_api_client.register_user(
name, email_addr, phone, password, auth_type
)
user_api_client.add_user_to_service(default_service.id, user.id, permissions, folder_permissions)
user_api_client.activate_user(user.id)
yield user
user_api_client.deactivate_user(user.id)
service_api_client.remove_user_from_service(user.id, default_service.id)
@pytest.fixture
def admin_user(default_service):
with _set_up_user(
default_service, "E2E Admin Test", "admin@nowhere.huh", "1234567890", "password", "sms"
) as user:
yield user