Coverage for src/tests/modules/club/repositories/test_coach_db_query.py: 77%
35 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 coaches database query."""
3import pytest
5from kwai_bc_club.domain.club_coach import ClubCoachIdentifier
6from kwai_bc_club.domain.member import MemberIdentifier
7from kwai_bc_club.repositories.coach_db_query import CoachDBQuery
8from kwai_bc_club.repositories.coach_query import CoachQuery
9from kwai_core.db.database import Database
10from kwai_core.domain.value_objects.unique_id import UniqueId
13pytestmark = pytest.mark.db
16@pytest.fixture
17def query(database: Database) -> CoachQuery:
18 """A fixture for a coach query."""
19 return CoachDBQuery(database)
22async def test_filter_by_id(query: CoachQuery):
23 """Test filtering by id."""
24 query.filter_by_id(ClubCoachIdentifier(1))
25 try:
26 await query.fetch_one()
27 except Exception as exc:
28 pytest.fail(f"An exception occurred: {exc}")
31async def test_filter_by_active(query: CoachQuery):
32 """Test filtering by active coaches."""
33 query.filter_by_active()
34 try:
35 await query.fetch_one()
36 except Exception as exc:
37 pytest.fail(f"An exception occurred: {exc}")
40async def test_filter_by_uuid(query: CoachQuery):
41 """Test filtering by uuid."""
42 query.filter_by_user_uuid(UniqueId.generate())
44 try:
45 await query.fetch_one()
46 except Exception as exc:
47 pytest.fail(f"An exception occurred: {exc}")
50async def test_filter_by_member_id(query: CoachQuery):
51 """Test filtering by member id."""
52 query.filter_by_member(MemberIdentifier(1))
54 try:
55 await query.fetch_one()
56 except Exception as exc:
57 pytest.fail(f"An exception occurred: {exc}")