You've already forked RekomenciBackend
45 lines
1.3 KiB
Python
45 lines
1.3 KiB
Python
from datetime import UTC
|
|
from uuid import UUID, uuid4
|
|
|
|
from template_project.application.user.entity import UserId
|
|
from template_project.application.user.profile.entity import Profile
|
|
|
|
|
|
def test_profile_factory_creates_valid_profile() -> None:
|
|
user_id = UserId(uuid4())
|
|
|
|
profile = Profile.factory(
|
|
user_id=user_id,
|
|
email="test@example.com",
|
|
display_name="Test User",
|
|
first_name="Test",
|
|
last_name="User",
|
|
avatar_url="https://example.com/avatar.jpg",
|
|
phone="+1234567890",
|
|
)
|
|
|
|
assert isinstance(profile.id, UUID)
|
|
assert profile.user_id == user_id
|
|
assert profile.email == "test@example.com"
|
|
assert profile.display_name == "Test User"
|
|
assert profile.first_name == "Test"
|
|
assert profile.last_name == "User"
|
|
assert profile.avatar_url == "https://example.com/avatar.jpg"
|
|
assert profile.phone == "+1234567890"
|
|
assert profile.deleted_at is None
|
|
assert profile.created_at.tzinfo == UTC
|
|
|
|
|
|
def test_profile_factory_with_minimal_fields() -> None:
|
|
user_id = UserId(uuid4())
|
|
|
|
profile = Profile.factory(user_id=user_id)
|
|
|
|
assert profile.user_id == user_id
|
|
assert profile.email is None
|
|
assert profile.display_name is None
|
|
assert profile.first_name is None
|
|
assert profile.last_name is None
|
|
assert profile.avatar_url is None
|
|
assert profile.phone is None
|