Coverage for src/tests/modules/identity/users/test_user_account_db_query.py: 79%
29 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 user account database query."""
3import pytest
5from kwai_bc_identity.users.user_account import UserAccountIdentifier
6from kwai_bc_identity.users.user_account_db_query import UserAccountDbQuery
7from kwai_bc_identity.users.user_account_query import UserAccountQuery
8from kwai_core.db.database import Database
9from kwai_core.domain.value_objects.email_address import EmailAddress
10from kwai_core.domain.value_objects.unique_id import UniqueId
13pytestmark = pytest.mark.db
16@pytest.fixture
17def query(database: Database) -> UserAccountQuery:
18 """A fixture for a user account query."""
19 return UserAccountDbQuery(database)
22async def test_filter_by_id(query: UserAccountQuery):
23 """Test filtering by id."""
24 query.filter_by_id(UserAccountIdentifier(1))
26 try:
27 await query.fetch_one()
28 except Exception as exc:
29 pytest.fail(f"An exception occurred: {exc}")
32async def test_filter_by_email(query: UserAccountQuery):
33 """Test filtering by email."""
34 query.filter_by_email(EmailAddress(email="jigoro.kano@kwai.com"))
36 try:
37 await query.fetch_one()
38 except Exception as exc:
39 pytest.fail(f"An exception occurred: {exc}")
42async def test_filter_by_uuid(query: UserAccountQuery):
43 """Test filtering by unique id."""
44 query.filter_by_uuid(UniqueId.generate())
46 try:
47 await query.fetch_one()
48 except Exception as exc:
49 pytest.fail(f"An exception occurred: {exc}")