From 125cc79ff4948cd919b5b788caa1d491abd7d354 Mon Sep 17 00:00:00 2001 From: Askaholic Date: Sat, 14 Dec 2019 13:11:38 -0900 Subject: [PATCH] Call gather correctly --- server/gameconnection.py | 4 ++-- server/matchmaker/search.py | 3 +-- server/servercontext.py | 2 +- tests/unit_tests/conftest.py | 4 ++-- tests/unit_tests/test_ladder.py | 2 +- 5 files changed, 7 insertions(+), 8 deletions(-) diff --git a/server/gameconnection.py b/server/gameconnection.py index 74e0da2bd..dc23973d7 100644 --- a/server/gameconnection.py +++ b/server/gameconnection.py @@ -120,7 +120,7 @@ async def _handle_lobby_state(self): if peer != self and peer.player != self.game.host: self._logger.debug("%s connecting to %s", self.player, peer) tasks.append(self.connect_to_peer(peer)) - await asyncio.gather(tasks) + await asyncio.gather(*tasks) except Exception as e: # pragma: no cover self._logger.exception(e) @@ -539,7 +539,7 @@ async def disconnect_all_peers(self): tasks.append(peer.send_DisconnectFromPeer(self.player.id)) try: - await asyncio.gather(tasks) + await asyncio.gather(*tasks) except Exception: # pragma no cover self._logger.exception( "peer_sendDisconnectFromPeer failed for player %i", diff --git a/server/matchmaker/search.py b/server/matchmaker/search.py index 9831307cf..8bef98abe 100644 --- a/server/matchmaker/search.py +++ b/server/matchmaker/search.py @@ -3,12 +3,12 @@ import time from typing import List, Optional, Tuple +from server.rating import RatingType from trueskill import Rating, quality from .. import config from ..decorators import with_logger from ..players import Player -from server.rating import RatingType @with_logger @@ -71,7 +71,6 @@ def has_no_top_player(self) -> bool: max_rating = max(map(lambda rating_tuple: rating_tuple[0], self.ratings)) return max_rating < config.TOP_PLAYER_MIN_RATING - @property def ratings(self): ratings = [] diff --git a/server/servercontext.py b/server/servercontext.py index e71dfb4f1..d75f3ea13 100644 --- a/server/servercontext.py +++ b/server/servercontext.py @@ -53,7 +53,7 @@ async def broadcast_raw(self, message, validate_fn=lambda a: True): if validate_fn(conn): tasks.append(proto.send_raw(message)) - await asyncio.gather(tasks) + await asyncio.gather(*tasks) async def client_connected(self, stream_reader, stream_writer): self._logger.debug("%s: Client connected", self) diff --git a/tests/unit_tests/conftest.py b/tests/unit_tests/conftest.py index 5e3b4ed2f..f600a4c47 100644 --- a/tests/unit_tests/conftest.py +++ b/tests/unit_tests/conftest.py @@ -1,14 +1,14 @@ from unittest import mock +import asynctest import pytest +from asynctest import CoroutineMock from server import GameStatsService from server.game_service import GameService from server.gameconnection import GameConnection, GameConnectionState from server.games import Game from server.geoip_service import GeoIpService from server.ladder_service import LadderService -import asynctest -from asynctest import CoroutineMock @pytest.fixture diff --git a/tests/unit_tests/test_ladder.py b/tests/unit_tests/test_ladder.py index a3a630b5b..06737358f 100644 --- a/tests/unit_tests/test_ladder.py +++ b/tests/unit_tests/test_ladder.py @@ -157,7 +157,7 @@ async def test_start_game_called_on_match(ladder_service: LadderService, await ladder_service.start_search(p1, Search([p1]), 'ladder1v1') await ladder_service.start_search(p2, Search([p2]), 'ladder1v1') - await asyncio.sleep(1) + await asyncio.sleep(2) ladder_service.inform_player.assert_called() ladder_service.start_game.assert_called_once()