tests: expanded assertions
Some checks failed
ci / lint_and_test (push) Failing after 8s

New assertions added for new data being delivered (eg IDs on endpoints not previously serving IDs)
This commit is contained in:
Chris Milne 2026-06-09 14:43:52 +01:00
parent 607f736453
commit 76e889d836
4 changed files with 110 additions and 35 deletions

View file

@ -137,14 +137,18 @@ async def test_act_on_resource_logic(
@pytest.mark.anyio
async def test_get_group_permissions_success(default_client: AsyncClient):
resp = await default_client.get("/iam/group/permissions?org_id=1&group_id=1")
assert resp.status_code == 200
data = resp.json()
assert resp.status_code == 200
assert "permissions" in data
assert isinstance(data["permissions"], list)
assert data["permissions"][0]["service_name"] == "Test Service"
assert data["permissions"][0]["resource"] == "test_resource"
assert data["permissions"][0]["action"] == "read"
permission = data["permissions"][0]
assert permission["id"] == 1
assert permission["service_name"] == "Test Service"
assert permission["resource"] == "test_resource"
assert permission["action"] == "read"
@pytest.mark.parametrize(
@ -191,15 +195,18 @@ async def test_get_group_permissions_mismatch(
@pytest.mark.anyio
async def test_get_group_users_success(default_client: AsyncClient):
resp = await default_client.get("/iam/group/users?org_id=1&group_id=1")
assert resp.status_code == 200
data = resp.json()
assert resp.status_code == 200
assert "users" in data
assert isinstance(data["users"], list)
assert data["users"][0]["id"] == 1
assert data["users"][0]["first_name"] == "Admin"
assert data["users"][0]["last_name"] == "Test"
assert data["users"][0]["email"] == "admin@test.com"
user = data["users"][0]
assert user["id"] == 1
assert user["first_name"] == "Admin"
assert user["last_name"] == "Test"
assert user["email"] == "admin@test.com"
@pytest.mark.parametrize(
@ -248,9 +255,10 @@ async def test_post_group_success(default_client: AsyncClient):
resp = await default_client.post(
"/iam/group", json={"name": "New Group", "organisation_id": 1}
)
assert resp.status_code == 200
data = resp.json()
assert resp.status_code == 200
assert "group" in data
assert isinstance(data["group"], dict)
assert data["group"]["name"] == "New Group"
@ -303,9 +311,10 @@ async def test_put_group_perm_success(default_client: AsyncClient, db_session):
"/iam/group/permission",
json={"permission_id": 1, "group_id": 2, "organisation_id": 1},
)
assert resp.status_code == 200
data = resp.json()
assert resp.status_code == 200
assert "group" in data
assert isinstance(data["group"], dict)
assert data["group"]["name"] == "Test Group Two"
@ -313,9 +322,12 @@ async def test_put_group_perm_success(default_client: AsyncClient, db_session):
assert "permissions" in data
assert isinstance(data["permissions"], list)
assert data["permissions"][0]["service_name"] == "Test Service"
assert data["permissions"][0]["resource"] == "test_resource"
assert data["permissions"][0]["action"] == "read"
permission = data["permissions"][0]
assert permission["id"] == 1
assert permission["service_name"] == "Test Service"
assert permission["resource"] == "test_resource"
assert permission["action"] == "read"
@pytest.mark.parametrize(
@ -435,9 +447,10 @@ async def test_put_group_user_success(default_client: AsyncClient, db_session):
resp = await default_client.put(
"/iam/group/user", json={"user_id": 2, "group_id": 1, "organisation_id": 1}
)
assert resp.status_code == 200
data = resp.json()
assert resp.status_code == 200
assert "group" in data
assert isinstance(data["group"], dict)
assert data["group"]["name"] == "Test Group"
@ -445,10 +458,12 @@ async def test_put_group_user_success(default_client: AsyncClient, db_session):
assert "users" in data
assert isinstance(data["users"], list)
assert data["users"][1]["id"] == 2
assert data["users"][1]["first_name"] == "User"
assert data["users"][1]["last_name"] == "Test"
assert data["users"][1]["email"] == "user@test.org"
user = data["users"][1]
assert user["id"] == 2
assert user["first_name"] == "User"
assert user["last_name"] == "Test"
assert user["email"] == "user@test.org"
@pytest.mark.parametrize(
@ -519,9 +534,12 @@ async def test_get_permissions_success(default_client: AsyncClient):
assert resp.status_code == 200
assert "permissions" in data
assert isinstance(data["permissions"], list)
assert data["permissions"][0]["service_name"] == "Test Service"
assert data["permissions"][0]["resource"] == "test_resource"
assert data["permissions"][0]["action"] == "read"
permission = data["permissions"][0]
assert permission["id"] == 1
assert permission["service_name"] == "Test Service"
assert permission["resource"] == "test_resource"
assert permission["action"] == "read"
@pytest.mark.parametrize(
@ -542,10 +560,14 @@ async def test_post_perm_success(default_client: AsyncClient, db_session):
"/iam/permission",
json={"service_id": 1, "resource": "test_resource", "action": "create"},
)
assert resp.status_code == 200
data = resp.json()
assert resp.status_code == 200
assert "permission" in data
assert isinstance(data["permission"], dict)
assert data["permission"]["id"] == 2
assert data["permission"]["service_name"] == "Test Service"
assert data["permission"]["resource"] == "test_resource"
assert data["permission"]["action"] == "create"
@ -629,9 +651,12 @@ async def test_post_perm_search_success(default_client: AsyncClient, db_session,
assert resp.status_code == 200
assert "permissions" in data
assert isinstance(data["permissions"], list)
assert data["permissions"][0]["service_name"] == "Test Service"
assert data["permissions"][0]["resource"] == "test_resource"
assert data["permissions"][0]["action"] == "read"
permission = data["permissions"][0]
assert permission["id"] == 1
assert permission["service_name"] == "Test Service"
assert permission["resource"] == "test_resource"
assert permission["action"] == "read"
@pytest.mark.parametrize(