Example #1
0
    def test_update_user_scores_with_tie(self):
        game = self.game
        user = self.user
        player = add_player_to_game(game, user)
        other_user = User.objects.create(username='******')
        other_player = add_player_to_game(game, other_user)
        player.score = 5
        player.save()
        other_player.score = 7
        other_player.save()
        third_user = User.objects.create(username='******')
        third_player = add_player_to_game(game, third_user)
        third_player.score = 5
        third_player.save()

        Point.objects.create(winner=player)
        Point.objects.create(winner=other_player)
        Point.objects.create(winner=third_player)

        game = update_user_scores(game)
        player = Player.objects.get(id=player.id)
        assert player.user.score == -1
        other_player = Player.objects.get(id=other_player.id)
        assert other_player.user.score == 1
        third_player = Player.objects.get(id=third_player.id)
        assert third_player.user.score == 0
Example #2
0
 def test_increment_current_turn(self):
     game = self.game
     user = self.user
     player = add_player_to_game(game, user)
     other_user = User.objects.create(username='******')
     other_player = add_player_to_game(game, other_user)
     game = initialize_game(game)
     game = increment_current_turn(game)
     assert game.current_turn == other_player
     assert other_player.play_order == 1
Example #3
0
 def test_increment_current_turn_with_folded_player(self):
     game = self.game
     user = self.user
     player = add_player_to_game(game, user)
     other_user = User.objects.create(username='******')
     other_player = add_player_to_game(game, other_user)
     other_player.has_folded = True
     other_player.save()
     game = initialize_game(game)
     assert game.current_turn == player
     game = increment_current_turn(game)
     # Should skip other player because they folded
     assert game.current_turn == player
Example #4
0
    def test_add_player_to_game(self):
        game = self.game
        user = self.user
        player = add_player_to_game(game, user)
        game = Game.objects.get(id=game.id)
        assert game.players.count() == 1
        assert player.play_order == 0

        other_user = User.objects.create(username='******')
        player = add_player_to_game(game, other_user)
        game = Game.objects.get(id=game.id)
        assert game.players.count() == 2
        assert player.play_order == 1
Example #5
0
    def test_initialize_game(self):
        game = self.game
        user = self.user
        player = add_player_to_game(game, user)
        other_user = User.objects.create(username='******')
        other_user.score = 20
        other_user.save()
        other_player = add_player_to_game(game, other_user)
        game = initialize_game(game)
        assert game.current_turn == player

        other_user.score = -5
        other_user.save()
        game = initialize_game(game)
        assert game.current_turn == other_player
Example #6
0
    def test_update_user_scores(self):
        game = self.game
        user = self.user
        player = add_player_to_game(game, user)
        other_user = User.objects.create(username='******')
        other_player = add_player_to_game(game, other_user)
        player.score = 5
        player.save()
        other_player.score = 7
        other_player.save()

        game = update_user_scores(game)
        player = Player.objects.get(id=player.id)
        assert player.user.score == -1
        other_player = Player.objects.get(id=other_player.id)
        assert other_player.user.score == 1
Example #7
0
 def test_remove_player_from_game(self):
     game = self.game
     user = self.user
     player = add_player_to_game(game, user)
     remove_player_from_game(game, user)
     game = Game.objects.get(id=game.id)
     assert game.players.count() == 0