Coverage for src/tests/modules/teams/domain/test_team.py: 100%
24 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 Team entity class."""
3from kwai_bc_teams.domain.team import TeamEntity, TeamMembers
4from kwai_bc_teams.domain.team_member import TeamMember
7def test_add_member(make_member):
8 """Test adding a member to a team."""
9 team = TeamEntity(name="U13")
10 team_member = TeamMember(active=True, member=make_member())
11 new_team = team.add_member(team_member)
12 assert len(team.members) == 0, "The old team should still be empty"
13 assert len(new_team.members) == 1, "The new team should contain 1 member"
14 assert new_team.members.get(team_member.member.uuid) is not None, (
15 "The team member should be part of the team"
16 )
19def test_team_members_with_dict(make_member):
20 """Test adding team members from a dict."""
21 team_member = TeamMember(active=True, member=make_member())
22 team_members_dict = {team_member.member.uuid: team_member}
23 team_members = TeamMembers(team_members_dict)
24 assert len(team_members) == 1, "There should be one team member."
25 new_team_member = TeamMember(active=True, member=make_member())
26 team_members = team_members.add(new_team_member)
27 assert len(team_members) == 2, "There should be one team member."
28 assert len(team_members_dict) == 1, "There should be still one member in the dict"
31def test_remove_member(make_team, make_member):
32 """Test removing a member from a team."""
33 team_member = TeamMember(active=True, member=make_member())
34 original_team = make_team(
35 name="U13", members=TeamMembers({team_member.member.uuid: team_member})
36 )
37 team = original_team.remove_member(team_member)
38 assert len(team.members) == 0, "The team should not have a team member."
39 assert len(original_team.members) == 1, (
40 "The old team should still have a team member."
41 )