Coverage for src/tests/api/v1/club/members/test_members.py: 100%
25 statements
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
1"""Module for testing the members endpoint of the club API."""
3import pytest
5from fastapi import status
6from fastapi.testclient import TestClient
7from kwai_core.domain.value_objects.unique_id import UniqueId
10pytestmark = pytest.mark.api
13def test_get_members(secure_client: TestClient):
14 """Test /api/v1/club/members."""
15 response = secure_client.get("/api/v1/club/members")
16 assert response.status_code == status.HTTP_200_OK
19def test_get_inactive_members(secure_client: TestClient):
20 """Test /api/v1/club/members for inactive members."""
21 response = secure_client.get(
22 "/api/v1/club/members", params={"filter[enabled]": False}
23 )
24 assert response.status_code == status.HTTP_200_OK
27def test_get_members_with_license_end_date(secure_client: TestClient):
28 """Test /api/v1/club/members for members with given license end date."""
29 response = secure_client.get(
30 "/api/v1/club/members",
31 params={"filter[license_end_month]": 1, "filter[license_end_year]": 2024},
32 )
33 assert response.status_code == status.HTTP_200_OK
36async def test_get_member(secure_client: TestClient, make_member_in_db):
37 """Test /api/v1/club/members/{uuid} for members with given unique id."""
38 member = await make_member_in_db()
39 response = secure_client.get(f"/api/v1/club/members/{member.uuid}")
40 assert response.status_code == status.HTTP_200_OK
43def test_get_member_not_found(secure_client: TestClient):
44 """Test /api/v1/club/members/{uuid} return not found."""
45 uuid = str(UniqueId.generate())
46 response = secure_client.get(f"/api/v1/club/members/{uuid}")
47 assert response.status_code == status.HTTP_404_NOT_FOUND
50def test_get_member_with_name_filter(secure_client: TestClient):
51 """Test /api/v1/club/members for members with the given name."""
52 response = secure_client.get(
53 "/api/v1/club/members", params={"filter[name]": "kano"}
54 )
55 assert response.status_code == status.HTTP_200_OK