Example #1
0
 def test_update_game_status_case_one(self):
     """
     Case one description:
         Match
             sets to play 3
             sets played 2
             points 25
             game_status: Playing
             sets [
                 {
                     game_status: Finished
                     t1: 25
                     t2: 0
                 }
                 {
                     game_status: Playing
                     t1: 25
                     t2: 0
                 }
             ]
     change SET game_status to Finished
     change MATCH game_status to Finished
     """
     match = MatchFactory(sets_number=3)
     teams = [TeamFactory() for i in range(2)]
     match.teams.add(*teams)
     SetFinishedTeamOneFactory(match=match)
     _set = SetFinishedTeamOneFactory(match=match)
     match.update_game_status()
     assert Set.objects.get(
         id=_set.id).game_status == Set.GameStatus.FINISHED.value
     assert match.game_status == Match.GameStatus.FINISHED.value
     assert Set.objects.filter(match=match).count() == 2
Example #2
0
 def test_update_game_status_case_three(self):
     """
     Case three description:
         Match
             sets to play 5
             sets played 4
             points 25
             game_status: Playing
             sets [
                 {
                     game_status: Finished
                     t1: 25
                     t2: 0
                 }
                 {
                     game_status: Playing
                     t1: 25
                     t2: 0
                 }
                 {
                     game_status: Finished
                     t1: 0
                     t2: 25
                 }
                 {
                     game_status: Finished
                     t1: 0
                     t2: 25
                 }
             ]
     change SET game status to FINISHED
     MATCH game status should be PLAYING
     new SET SHOULD BE CREATED
     """
     match = MatchFactory(sets_number=5)
     teams = [TeamFactory() for i in range(2)]
     match.teams.add(*teams)
     SetFinishedTeamOneFactory(match=match)
     SetFinishedTeamOneFactory(match=match)
     SetFinishedTeamTwoFactory(match=match)
     _set = SetFactory(match=match, team_two_points=25)
     match.update_game_status()
     assert Set.objects.get(
         id=_set.id).game_status == Set.GameStatus.FINISHED.value
     assert match.game_status == Match.GameStatus.PLAYING.value
     assert Set.objects.filter(match=match).count() == 5
     new_set = Set.objects.filter(match=match).order_by('id').last()
     assert new_set.game_status == Set.GameStatus.PLAYING.value
     assert new_set.team_one_points == 0
     assert new_set.team_two_points == 0
     assert new_set.is_tie_break is True
     assert new_set.set_number == 5
Example #3
0
 def test_update_game_status_case_four(self):
     """
     Case four description:
         Match
             sets to play 5
             sets played 5
             points 25
             game_status: Playing
             sets [
                 {
                     game_status: Finished
                     t1: 25
                     t2: 0
                 }
                 {
                     game_status: Playing
                     t1: 25
                     t2: 0
                 }
                 {
                     game_status: Finished
                     t1: 0
                     t2: 25
                 }
                 {
                     game_status: Finished
                     t1: 0
                     t2: 25
                 }
                 {
                     game_status: Finished
                     t1: 0
                     t2: 15
                 }
             ]
     change SET game status to FINISHED
     MATCH game status should be FINISHED
     """
     match = MatchFactory(sets_number=5)
     teams = [TeamFactory() for i in range(2)]
     match.teams.add(*teams)
     SetFinishedTeamOneFactory(match=match)
     SetFinishedTeamOneFactory(match=match)
     SetFinishedTeamTwoFactory(match=match)
     SetFinishedTeamTwoFactory(match=match)
     _set = SetFactory(match=match, team_two_points=15, is_tie_break=True)
     match.update_game_status()
     assert Set.objects.get(
         id=_set.id).game_status == Set.GameStatus.FINISHED.value
     assert match.game_status == Match.GameStatus.FINISHED.value
     assert Set.objects.filter(match=match).count() == 5