From 92ae1898b6de38ff2dc1656ae6d9ec58fa01e28e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90inh=20Ho=C3=A0ng=20Vi=E1=BB=87t?= <134517889+M-DinhHoangViet@users.noreply.github.com> Date: Mon, 4 Mar 2024 21:33:55 +0700 Subject: [PATCH] Type hint `challenge_validator.py` --- challenge_validator.py | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/challenge_validator.py b/challenge_validator.py index 83d3cb3..86e83fb 100644 --- a/challenge_validator.py +++ b/challenge_validator.py @@ -3,27 +3,26 @@ class Challenge_Validator: def __init__(self, config: dict) -> None: - self.variants = config['challenge']['variants'] - self.speeds = config['challenge']['time_controls'] + self.variants: list[str] = config['challenge']['variants'] + self.speeds: list[str] = config['challenge']['time_controls'] self.time_controls = self._get_time_controls(self.speeds) - self.time_controls = config['challenge']['time_controls'] - self.bullet_with_increment_only = config['challenge'].get('bullet_with_increment_only', False) - self.min_increment = config['challenge'].get('min_increment', 0) - self.max_increment = config['challenge'].get('max_increment', 180) - self.min_initial = config['challenge'].get('min_initial', 0) - self.max_initial = config['challenge'].get('max_initial', 315360000) - self.bot_modes = config['challenge']['bot_modes'] - self.human_modes = config['challenge']['human_modes'] - self.whitelist = config.get('whitelist', []) - self.blacklist = config.get('blacklist', []) + self.bullet_with_increment_only: bool = config['challenge'].get('bullet_with_increment_only', False) + self.min_increment: int = config['challenge'].get('min_increment', 0) + self.max_increment: int = config['challenge'].get('max_increment', 180) + self.min_initial: int = config['challenge'].get('min_initial', 0) + self.max_initial: int = config['challenge'].get('max_initial', 315360000) + self.bot_modes: list[str] = config['challenge']['bot_modes'] + self.human_modes: list[str] = config['challenge']['human_modes'] + self.whitelist: list[str] = config.get('whitelist', []) + self.blacklist: list[str] = config.get('blacklist', []) def get_decline_reason(self, challenge_event: dict) -> Decline_Reason | None: speed = challenge_event['challenge']['speed'] - if speed == 'correspondence': + if speed: str == 'correspondence': print('Time control "Correspondence" is not supported by Lichess-Bot.') return Decline_Reason.TIME_CONTROL - variant = challenge_event['challenge']['variant']['key'] + variant: str = challenge_event['challenge']['variant']['key'] if variant not in self.variants: print(f'Variant "{variant}" is not allowed according to config.') return Decline_Reason.VARIANT @@ -39,7 +38,7 @@ def get_decline_reason(self, challenge_event: dict) -> Decline_Reason | None: print('Neither bots nor humans are allowed according to config.') return Decline_Reason.GENERIC - is_bot = challenge_event['challenge']['challenger']['title'] == 'BOT' + is_bot: bool = challenge_event['challenge']['challenger']['title'] == 'BOT' modes = self.bot_modes if is_bot else self.human_modes if modes is None: if is_bot: @@ -49,8 +48,8 @@ def get_decline_reason(self, challenge_event: dict) -> Decline_Reason | None: print('Only bots are allowed according to config.') return Decline_Reason.ONLY_BOT - increment = challenge_event['challenge']['timeControl']['increment'] - initial = challenge_event['challenge']['timeControl']['limit'] + increment: int = challenge_event['challenge']['timeControl']['increment'] + initial: int = challenge_event['challenge']['timeControl']['limit'] if not self.speeds: print('No time control is allowed according to config.') return Decline_Reason.GENERIC @@ -79,7 +78,7 @@ def get_decline_reason(self, challenge_event: dict) -> Decline_Reason | None: print('Bullet against bots is only allowed with increment according to config.') return Decline_Reason.TOO_FAST - is_rated = challenge_event['challenge']['rated'] + is_rated: bool = challenge_event['challenge']['rated'] is_casual = not is_rated if is_rated and 'rated' not in modes: print('Rated is not allowed according to config.')