From 7cbaf473ca385cd64978a2d6f25f2df6af76bdb9 Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Tue, 2 Mar 2021 14:33:51 +0100 Subject: Refactoring test.result.Result --- minishell_test/test/captured.py | 48 +++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 21 deletions(-) (limited to 'minishell_test/test/captured.py') diff --git a/minishell_test/test/captured.py b/minishell_test/test/captured.py index 6481dcf..bb09579 100644 --- a/minishell_test/test/captured.py +++ b/minishell_test/test/captured.py @@ -6,43 +6,49 @@ # By: charles +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2020/09/11 12:16:25 by charles #+# #+# # -# Updated: 2021/03/01 16:15:31 by cacharle ### ########.fr # +# Updated: 2021/03/02 10:32:19 by cacharle ### ########.fr # # # # ############################################################################ # -from typing import List, Optional +from typing import List, Optional, Union -class Captured: +class CapturedCommand: def __init__( self, output: str, status: int, files_content: List[Optional[str]], - is_timeout: bool = False ): - """Captured class - output: captured content - status: command status - files_content: content of the files altered by the command - is_timeout: the command has timed out + """Captured command + + :param output: + Command output + :param status: + Command return status code + :param files_content: + Content of the files altered by the command """ self.output = output self.status = status self.files_content = files_content - self.is_timeout = is_timeout def __eq__(self, other: object) -> bool: - if not isinstance(other, Captured): + if not isinstance(other, CapturedCommand): return False - if self.is_timeout: - return self.is_timeout == other.is_timeout - return (self.output == other.output and - self.status == other.status and - all(x == y for x, y in zip(self.files_content, other.files_content))) - - @staticmethod - def timeout(): - """Create a new captured timeout""" - return Captured("", 0, [], is_timeout=True) + return ( + self.output == other.output and + self.status == other.status and + all(x == y for x, y in zip(self.files_content, other.files_content)) + ) + + +class CapturedTimeout(): + """Captured timeout""" + + def __eq__(self, other: object) -> bool: + return isinstance(other, CapturedTimeout) + + +CapturedType = Union[CapturedCommand, CapturedTimeout] -- cgit