Coverage for src/tests/modules/identity/user_invitations/test_user_invitation_mailer.py: 100%
16 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 invitation mailer."""
3import pytest
5from kwai_bc_identity.user_invitations.user_invitation import UserInvitationEntity
6from kwai_bc_identity.user_invitations.user_invitation_mailer import (
7 UserInvitationMailer,
8)
9from kwai_bc_identity.users.user import UserEntity
10from kwai_core.domain.value_objects.email_address import EmailAddress
11from kwai_core.domain.value_objects.name import Name
12from kwai_core.mail.mailer import Mailer
13from kwai_core.mail.recipient import Recipients
14from kwai_core.template.mail_template import MailTemplate
17pytestmark = pytest.mark.mail
20@pytest.fixture(scope="module")
21def user_invitation(user: UserEntity) -> UserInvitationEntity:
22 """Fixture for a user invitation."""
23 return UserInvitationEntity(
24 email=EmailAddress("ichiro.abe@kwai.com"),
25 name=Name(first_name="Ichiro", last_name="Abe"),
26 user=user,
27 )
30def test_user_recovery_mailer_sent(
31 mailer: Mailer,
32 recipients: Recipients,
33 user_invitation_mail_template: MailTemplate,
34 user_invitation: UserInvitationEntity,
35):
36 """Test user invitation mailer."""
37 mail = UserInvitationMailer(
38 mailer, recipients, user_invitation_mail_template, user_invitation
39 ).send()
41 assert mail, "There should be an email."