def test_discard_member(): """Test the Team class method discard_member(github_id).""" team = Team("1", "brussel-sprouts", "Brussel Sprouts") new_github_id = "U0G9QF9C6" team.add_member(new_github_id) team.discard_member(new_github_id) assert team.members == set()
def mem_remove(self, github_id: str, selected_team: Team, team_name: str) -> ResponseTuple: """Help membership function if payload action is removal.""" member_list = self._facade. \ query(User, [('github_user_id', github_id)]) slack_ids_string = "" if len(member_list) == 1: slack_id = member_list[0].slack_id if selected_team.has_member(github_id): selected_team.discard_member(github_id) self._facade.store(selected_team) logging.info(f"deleted slack user {slack_id} " f"from {team_name}") slack_ids_string += f" {slack_id}" return (f"deleted slack ID{slack_ids_string} " f"from {team_name}", 200) else: logging.error(f"slack user {slack_id} not in {team_name}") return (f"slack user {slack_id} not in {team_name}", 200) elif len(member_list) > 1: logging.error("Error: found github ID connected to" " multiple slack IDs") return ("Error: found github ID connected to multiple" " slack IDs", 200) else: logging.error(f"could not find user {github_id}") return f"could not find user {github_id}", 200
class TestTeamModel(TestCase): def setUp(self): self.brussel_sprouts = Team('1', 'brussel-sprouts', 'Brussel Sprouts') self.brussel_sprouts_copy =\ Team('1', 'brussel-sprouts', 'Brussel Sprouts') self.brussel_trouts = Team('1', 'brussel-trouts', 'Brussel Trouts') def test_team_equality(self): """Test the Team class method __eq__() and __ne__().""" self.assertEqual(self.brussel_sprouts, self.brussel_sprouts_copy) self.assertNotEqual(self.brussel_sprouts, self.brussel_trouts) def test_valid_team(self): """Test the Team static class method is_valid().""" self.assertTrue(Team.is_valid(self.brussel_sprouts)) self.brussel_sprouts.github_team_name = '' self.assertFalse(Team.is_valid(self.brussel_sprouts)) def test_add_member(self): """Test the Team class method add_member(github_id).""" new_github_id = "U0G9QF9C6" self.brussel_sprouts.add_member(new_github_id) self.assertIn(new_github_id, self.brussel_sprouts.members) def test_discard_member(self): """Test the Team class method discard_member(github_id).""" new_github_id = "U0G9QF9C6" self.brussel_sprouts.add_member(new_github_id) self.brussel_sprouts.discard_member(new_github_id) self.assertSetEqual(self.brussel_sprouts.members, set()) def test_is_member(self): """Test the Team class method is_member(github_id).""" new_github_id = "U0G9QF9C6" self.assertFalse(self.brussel_sprouts.has_member(new_github_id)) self.brussel_sprouts.add_member(new_github_id) assert self.brussel_sprouts.has_member(new_github_id) def test_add_lead(self): """Test the Team class method add_team_lead(github_id).""" new_github_id = "U0G9QF9C6" self.brussel_sprouts.add_team_lead(new_github_id) self.assertIn(new_github_id, self.brussel_sprouts.team_leads) def test_is_lead(self): """Test the Team class method is_team_lead(github_id).""" new_github_id = "U0G9QF9C6" self.assertFalse(self.brussel_sprouts.has_team_lead(new_github_id)) self.brussel_sprouts.add_team_lead(new_github_id) self.assertTrue(self.brussel_sprouts.has_team_lead(new_github_id)) def test_print(self): """Test print team class.""" new_slack_id = "U0G9QF9C6" self.brussel_sprouts.add_member(new_slack_id) self.brussel_sprouts.add_team_lead(new_slack_id) self.brussel_sprouts.platform = "web" expected = "{'github_team_id': '1'," \ " 'github_team_name': 'brussel-sprouts'," \ " 'display_name': 'Brussel Sprouts'," \ " 'platform': 'web'," \ " 'team_leads': {'U0G9QF9C6'}," \ " 'members': {'U0G9QF9C6'}," \ " 'folder': ''}" self.assertEqual(str(self.brussel_sprouts), expected)