From 2ee2d3405e321215c39ecaef791096d19727df83 Mon Sep 17 00:00:00 2001 From: alwayscompiling Date: Mon, 1 Aug 2022 21:57:19 -0400 Subject: [PATCH] Redo score docstrings. --- data/score.py | 71 +++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 63 insertions(+), 8 deletions(-) diff --git a/data/score.py b/data/score.py index 811e8b6..9021546 100644 --- a/data/score.py +++ b/data/score.py @@ -9,51 +9,106 @@ class Score: # no user setter, it should never change. def __init__(self, user: str, value: int) -> None: + """ + Default constructor for Score class. + + Args: + user (str): Score's user + value (int): Score's value + """ self._user: str = user self._value: int = value def __str__(self) -> str: + """ + Returns Score class as a string for printing. + + Returns: + str: Score class as a string + """ return f"{self.user}: {self.get_str()}" @property def user(self) -> str: - """Getter for user.""" + """ + Getter for score user. + + Returns: + str: user + """ return self._user @property def value(self) -> int: - """Getter for score value.""" + """ + Getter for score value. + + Returns: + int: value + """ return self._value @value.setter def value(self, value: int) -> None: - """Setter for score value.""" + """ + Setter for score value. + + Args: + value (int): score value input + """ self._value = value def get_str(self) -> str: - """Gets score's value as a string.""" + """ + Gets score's value as string. + + Returns: + str: Score's value + """ return str(self._value) class ScoreTime(Score): - """Class for a time based score.""" + """Class for a time based score. Inherits from Score.""" def __init__(self, user: str, score: float) -> None: # pylint: disable=super-init-not-called + """ + Default constructor for ScoreTime class. + + Args: + user (str): Score's user + score (float): Score's value + """ # store time score as seconds. self._user: str = user self._score: float = score @property def value(self) -> float: - """Getter for score value.""" + """ + Getter for score value. + + Returns: + float: value + """ return self._score @value.setter def value(self, value: float) -> None: - """Setter for score value.""" + """ + Setter for score value. + + Args: + value (float): value + """ self._score = value def get_str(self) -> str: - """Gets score's value as a string. Returns in time format.""" + """ + Gets score's value as string. Turns seconds into MM:SS.ms format. + + Returns: + str: value in time format. + """ milliseconds = round((self.value - int(self.value)) * 10) return time.strftime(f"%-M:%S.{milliseconds}", time.gmtime(self.value))