Files
notifications-admin/tests/app/main/views/test_history.py
2023-11-16 12:24:27 -08:00

110 lines
3.6 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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"),
[
(
{},
[
(
"12 December 2012",
(
"Test User 13:13 "
"Renamed this service from Before lunch to After lunch "
"Test User 12:12 "
"Renamed this service from Example service to Before lunch"
),
),
(
"11 November 2012",
("Test User 12:12 " "Revoked the Bad key API key"),
),
(
"11 November",
("Test User 11:11 " "Created an API key called Bad key"),
),
(
"10 October 2010",
(
"Test User 11:10 "
"Created an API key called Good key "
"Test User 10:09 "
"Created an API key called Key event returned in non-chronological order "
"Test User 02:01 "
"Created this service and called it Example service"
),
),
],
),
(
{"selected": "api"},
[
(
"11 November 2012",
("Test User 12:12 " "Revoked the Bad key API key"),
),
(
"11 November",
("Test User 11:11 " "Created an API key called Bad key"),
),
(
"10 October 2010",
(
"Test User 11:10 "
"Created an API key called Good key "
"Test User 10:09 "
"Created an API key called Key event returned in non-chronological order"
),
),
],
),
(
{"selected": "service"},
[
(
"12 December 2012",
(
"Test User 13:13 "
"Renamed this service from Before lunch to After lunch "
"Test User 12:12 "
"Renamed this service from Example service to Before lunch"
),
),
(
"10 October 2010",
(
"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