Working on api test.

Signed-off-by: Cliff Hill <Clifford.hill@gsa.gov>
This commit is contained in:
Cliff Hill
2023-12-07 16:26:25 -05:00
parent 991d9aa621
commit 5277953761
2 changed files with 43 additions and 11 deletions

View File

@@ -556,6 +556,27 @@ def sample_invited_user(notify_db_session):
return invited_user
@pytest.fixture(scope="function")
def sample_expired_user(notify_db_session):
service = create_service(check_if_service_exists=True)
to_email_address = "expired_user@digital.fake.gov"
from_user = service.users[0]
data = {
"service": service,
"email_address": to_email_address,
"from_user": from_user,
"permissions": "send_messages,manage_service,manage_api_keys",
"folder_permissions": ["folder_1_id", "folder_2_id"],
"created_at": datetime.utcnow() - timedelta(days=3),
"status": "expired",
}
expired_user = InvitedUser(**data)
save_invited_user(expired_user)
return expired_user
@pytest.fixture(scope="function")
def sample_invited_org_user(sample_user, sample_organization):
return create_invited_org_user(sample_organization, sample_user)

View File

@@ -141,7 +141,7 @@ def test_create_invited_user_invalid_email(client, sample_service, mocker, fake_
def test_get_all_invited_users_by_service(client, notify_db_session, sample_service):
invites = []
for i in range(0, 5):
email = "invited_user_{}@service.gov.uk".format(i)
email = f"invited_user_{i}@service.gov.uk"
invited_user = create_invited_user(sample_service, to_email_address=email)
invites.append(invited_user)
@@ -202,11 +202,24 @@ def test_get_invited_user_by_service_when_user_does_not_belong_to_the_service(
assert json_resp["result"] == "error"
def test_resend_expired_invite(client, sample_expired_user):
url = f"/service/{sample_expired_user.service_id}/invite/{sample_expired_user.id}"
# TODO: Don't actually send email, need to mock it out.
auth_header = create_admin_authorization_header()
response = client.post(
url,
data=json.dumps(data),
headers=[("Content-Type", "application/json"), auth_header],
)
assert response.status_code == 200
json_resp = json.loads(response.get_data(as_text=True))["data"]
assert json_resp["status"] == "cancelled"
def test_update_invited_user_set_status_to_cancelled(client, sample_invited_user):
data = {"status": "cancelled"}
url = "/service/{0}/invite/{1}".format(
sample_invited_user.service_id, sample_invited_user.id
)
url = f"/service/{sample_invited_user.service_id}/invite/{sample_invited_user.id}"
auth_header = create_admin_authorization_header()
response = client.post(
url,
@@ -223,7 +236,7 @@ def test_update_invited_user_for_wrong_service_returns_404(
client, sample_invited_user, fake_uuid
):
data = {"status": "cancelled"}
url = "/service/{0}/invite/{1}".format(fake_uuid, sample_invited_user.id)
url = f"/service/{fake_uuid}/invite/{sample_invited_user.id}"
auth_header = create_admin_authorization_header()
response = client.post(
url,
@@ -237,9 +250,7 @@ def test_update_invited_user_for_wrong_service_returns_404(
def test_update_invited_user_for_invalid_data_returns_400(client, sample_invited_user):
data = {"status": "garbage"}
url = "/service/{0}/invite/{1}".format(
sample_invited_user.service_id, sample_invited_user.id
)
url = f"/service/{sample_invited_user.service_id}/invite/{sample_invited_user.id}"
auth_header = create_admin_authorization_header()
response = client.post(
url,
@@ -291,7 +302,7 @@ def test_validate_invitation_token_for_expired_token_returns_400(client):
current_app.config["SECRET_KEY"],
current_app.config["DANGEROUS_SALT"],
)
url = "/invite/service/{}".format(token)
url = f"/invite/service/{token}"
auth_header = create_admin_authorization_header()
response = client.get(
url, headers=[("Content-Type", "application/json"), auth_header]
@@ -312,7 +323,7 @@ def test_validate_invitation_token_returns_400_when_invited_user_does_not_exist(
current_app.config["SECRET_KEY"],
current_app.config["DANGEROUS_SALT"],
)
url = "/invite/service/{}".format(token)
url = f"/invite/service/{token}"
auth_header = create_admin_authorization_header()
response = client.get(
url, headers=[("Content-Type", "application/json"), auth_header]
@@ -331,7 +342,7 @@ def test_validate_invitation_token_returns_400_when_token_is_malformed(client):
current_app.config["DANGEROUS_SALT"],
)[:-2]
url = "/invite/service/{}".format(token)
url = f"/invite/service/{token}"
auth_header = create_admin_authorization_header()
response = client.get(
url, headers=[("Content-Type", "application/json"), auth_header]