Files
notifications-admin/tests/app/main/views/test_history.py

110 lines
3.6 KiB
Python
Raw Normal View History

import pytest
from freezegun import freeze_time
from tests.conftest import SERVICE_ONE_ID, normalize_spaces
@pytest.mark.parametrize(
("extra_args", "expected_headings_and_events"),
[
(
{},
[
(
2023-11-16 12:24:27 -08:00
"12 December 2012",
(
2023-11-16 12:24:27 -08:00
"Test User 13:13 "
"Renamed this service from Before lunch to After lunch "
2023-11-16 12:24:27 -08:00
"Test User 12:12 "
"Renamed this service from Example service to Before lunch"
),
),
(
2023-11-16 12:24:27 -08:00
"11 November 2012",
("Test User 12:12 " "Revoked the Bad key API key"),
),
(
2023-11-16 12:24:27 -08:00
"11 November",
("Test User 11:11 " "Created an API key called Bad key"),
),
(
"10 October 2010",
(
2023-11-16 12:24:27 -08:00
"Test User 11:10 "
"Created an API key called Good key "
2023-11-16 12:24:27 -08:00
"Test User 10:09 "
"Created an API key called Key event returned in non-chronological order "
2023-11-16 12:24:27 -08:00
"Test User 02:01 "
"Created this service and called it Example service"
),
),
],
),
(
{"selected": "api"},
[
(
2023-11-16 12:24:27 -08:00
"11 November 2012",
("Test User 12:12 " "Revoked the Bad key API key"),
),
(
2023-11-16 12:24:27 -08:00
"11 November",
("Test User 11:11 " "Created an API key called Bad key"),
),
(
"10 October 2010",
(
2023-11-16 12:24:27 -08:00
"Test User 11:10 "
"Created an API key called Good key "
2023-11-16 12:24:27 -08:00
"Test User 10:09 "
"Created an API key called Key event returned in non-chronological order"
),
),
],
),
(
{"selected": "service"},
[
(
2023-11-16 12:24:27 -08:00
"12 December 2012",
(
2023-11-16 12:24:27 -08:00
"Test User 13:13 "
"Renamed this service from Before lunch to After lunch "
2023-11-16 12:24:27 -08:00
"Test User 12:12 "
"Renamed this service from Example service to Before lunch"
),
),
(
"10 October 2010",
(
2023-11-16 12:24:27 -08:00
"Test User 02:01 "
"Created this service and called it Example service"
),
),
],
),
],
)
@freeze_time("2012-01-01 01:01:01")
def test_history(
client_request,
mock_get_service_history,
mock_get_users_by_service,
extra_args,
expected_headings_and_events,
):
page = client_request.get("main.history", service_id=SERVICE_ONE_ID, **extra_args)
assert page.select_one("h1").text == "Audit events"
headings = page.select("main h2.heading-small")
events = page.select("main ul.bottom-gutter")
assert len(headings) == len(events) == len(expected_headings_and_events)
for index, expected in enumerate(expected_headings_and_events):
assert (
normalize_spaces(headings[index].text),
normalize_spaces(events[index].text),
) == expected