Skip to content

Commit b1fd226

Browse files
authored
Merge pull request #1187 from Fragger/fix-parse-raw-player-info-name
Fix player name used by parse_raw_player_info
2 parents b61b1d7 + 690dc52 commit b1fd226

File tree

3 files changed

+15
-14
lines changed

3 files changed

+15
-14
lines changed

rcon/rcon.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ def get_detailed_players(self) -> GetDetailedPlayers:
291291
continue
292292

293293
try:
294-
player_data = self._get_detailed_player_info(player_id, player_info, player)
294+
player_data = self._get_detailed_player_info(player_info, player)
295295
except Exception:
296296
logger.error("Failed to get info for %s", player_id)
297297
fail_count += 1
@@ -490,11 +490,12 @@ def get_detailed_player_info(self, player_id: str, player: GetPlayersType | None
490490
raw = super().get_player_info(player_id)
491491
except HLLCommandError:
492492
raise HLLCommandFailedError("Player is not online")
493-
return self._get_detailed_player_info(player_id, raw, player)
493+
return self._get_detailed_player_info(raw, player)
494494

495-
def _get_detailed_player_info(self, player_id: str, raw: dict[str, Any],
496-
player: GetPlayersType | None = None) -> GetDetailedPlayer:
497-
player_data = parse_raw_player_info(raw, player_id)
495+
def _get_detailed_player_info(
496+
self, raw: dict[str, Any], player: GetPlayersType | None = None
497+
) -> GetDetailedPlayer:
498+
player_data = parse_raw_player_info(raw)
498499
if player is not None and 'is_vip' in player:
499500
player_data["is_vip"] = player.get('is_vip')
500501
else:

rcon/utils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -423,10 +423,10 @@ def default_player_info_dict(player) -> GetDetailedPlayer:
423423
}
424424

425425

426-
def parse_raw_player_info(raw: dict[str, Any], player) -> GetDetailedPlayer:
426+
def parse_raw_player_info(raw: dict[str, Any]) -> GetDetailedPlayer:
427427
"""Parse the result of the playerinfo command from the game server"""
428428

429-
data = default_player_info_dict(player)
429+
data = default_player_info_dict(raw["name"])
430430

431431
# Remap keys and parse values
432432
data[PLAYER_ID] = raw["iD"]

tests/test_utils.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ def mock_get_detailed_player(
114114

115115

116116
@pytest.mark.parametrize(
117-
"raw, name, expected",
117+
"raw, expected",
118118
[
119119
(
120120
{
@@ -123,6 +123,7 @@ def mock_get_detailed_player(
123123
"role": 5,
124124
"level": "16",
125125
"loadout": "Standard Issue",
126+
"name": "MasterShake",
126127
"platoon": "JIG",
127128
"scoreData": {
128129
"cOMBAT": 72,
@@ -142,9 +143,8 @@ def mock_get_detailed_player(
142143
"eosId": "",
143144
"worldPosition": {},
144145
},
145-
"MasterShake",
146146
mock_get_detailed_player(
147-
name="",
147+
name="MasterShake",
148148
clan_tag="GH",
149149
eos_id="",
150150
platform="steam",
@@ -174,6 +174,7 @@ def mock_get_detailed_player(
174174
"role": 0,
175175
"level": "16",
176176
"loadout": "Standard Issue",
177+
"name": "MasterShake",
177178
"platoon": "ABLE",
178179
"scoreData": {
179180
"cOMBAT": 72,
@@ -193,9 +194,8 @@ def mock_get_detailed_player(
193194
"eosId": "",
194195
"worldPosition": {},
195196
},
196-
"MasterShake",
197197
mock_get_detailed_player(
198-
name="",
198+
name="MasterShake",
199199
clan_tag="GH",
200200
eos_id="",
201201
platform="steam",
@@ -220,5 +220,5 @@ def mock_get_detailed_player(
220220
),
221221
],
222222
)
223-
def test_parse_raw_player_info(raw, name, expected):
224-
assert parse_raw_player_info(raw=raw, player="") == expected
223+
def test_parse_raw_player_info(raw, expected):
224+
assert parse_raw_player_info(raw=raw) == expected

0 commit comments

Comments
 (0)