cleanup notify-compliance-46

This commit is contained in:
Kenneth Kehl
2024-07-26 09:15:09 -07:00
parent bd03d273fe
commit 34d727748b
2 changed files with 31 additions and 8 deletions

View File

@@ -56,6 +56,9 @@ class NotifyAdminAPIClient(BaseAPIClient):
):
abort(403)
def is_calling_signin_url(self, arg):
return arg[0].startswith("/user")
def check_inactive_user(self, *args):
still_signing_in = False
@@ -64,14 +67,15 @@ class NotifyAdminAPIClient(BaseAPIClient):
# and we only want to check the first arg
for arg in args:
arg = str(arg)
if (
"get-login-gov-user" in arg
or "user/email" in arg
or "/activate" in arg
or "/email-code" in arg
or "/verify/code" in arg
or "/user" in arg
):
if self.is_calling_signin_url(arg):
# if (
# "get-login-gov-user" in arg
# or "user/email" in arg
# or "/activate" in arg
# or "/email-code" in arg
# or "/verify/code" in arg
# or "/user" in arg
# ):
still_signing_in = True
# This seems to be a weird edge case that happens intermittently with invites

View File

@@ -41,6 +41,25 @@ def test_active_service_can_be_modified(notify_admin, method, user, service):
assert ret == request.return_value
@pytest.mark.parametrize(
("arg", "expected_result"),
[
(
("/user/c5f8a5c9-56d5-4fa9-8c30-3449ae10c072/verify/code",),
True,
),
(
("/service/blahblahblah",),
False,
),
],
)
def test_is_calling_signin_url(arg, expected_result):
api_client = NotifyAdminAPIClient()
result = api_client.is_calling_signin_url(arg)
assert result == expected_result
@pytest.mark.parametrize("method", ["put", "post", "delete"])
def test_inactive_service_cannot_be_modified_by_normal_user(
notify_admin, api_user_active, method