From dc4edddad1def34db9a7575a691e92e17f067f02 Mon Sep 17 00:00:00 2001 From: melisatuun Date: Tue, 26 Oct 2021 12:15:08 +0300 Subject: [PATCH 1/5] fix crashing problem --- src/MaterialManager.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/MaterialManager.py b/src/MaterialManager.py index bdfbaa2..ee24e28 100644 --- a/src/MaterialManager.py +++ b/src/MaterialManager.py @@ -24,5 +24,12 @@ def changeMaterial(self, material) -> bool: return self._announceMaterial(returnText) - def _announceMaterial(self, text: str) -> bool: - return self.announcer(text) + def _announceMaterial(self, text: str) -> bool: + returnValue = False + try: + returnValue = self.announcer(text) + except: + print("Announcement of material type is failed.") + returnValue = False + finally: + return returnValue From ec48e566c01029cc22de684f678de612c9a4fa93 Mon Sep 17 00:00:00 2001 From: melisatuun Date: Tue, 26 Oct 2021 12:16:54 +0300 Subject: [PATCH 2/5] add vibranium material --- src/MaterialManager.py | 7 ++++++- src/Util.py | 4 +++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/MaterialManager.py b/src/MaterialManager.py index bdfbaa2..69bf3b3 100644 --- a/src/MaterialManager.py +++ b/src/MaterialManager.py @@ -19,10 +19,15 @@ def changeMaterial(self, material) -> bool: self.carManager.setMaterial(materialType.Carbon) returnText = "Material is changed to Carbon." + case materialType.Vibranium: + self.carManager.setMaterial(materialType.Vibranium) + returnText = "Material is changed to Vibranium." + case _: - returnText = "Material seletion is invalid." + returnText = "Material selection is invalid." return self._announceMaterial(returnText) + def _announceMaterial(self, text: str) -> bool: return self.announcer(text) diff --git a/src/Util.py b/src/Util.py index 81ab0ba..bff8ab8 100644 --- a/src/Util.py +++ b/src/Util.py @@ -1,3 +1,5 @@ from enum import Enum -materialType = Enum('Titanium', 'Carbon') +materialType = Enum('Titanium', 'Carbon', 'Vibranium') + + From 3b2072687a70573d73e4dd26a85546563f55e0aa Mon Sep 17 00:00:00 2001 From: melisatuun Date: Tue, 26 Oct 2021 12:17:43 +0300 Subject: [PATCH 3/5] add comment for vibranium material --- src/Util.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Util.py b/src/Util.py index bff8ab8..388003f 100644 --- a/src/Util.py +++ b/src/Util.py @@ -1,5 +1,7 @@ from enum import Enum +# vibranium is specific to Steve's car + materialType = Enum('Titanium', 'Carbon', 'Vibranium') From b7adef28fa22404498e102abd38c3f5ec612c1b8 Mon Sep 17 00:00:00 2001 From: melisatuun Date: Tue, 26 Oct 2021 12:19:15 +0300 Subject: [PATCH 4/5] add alloyX material --- src/MaterialManager.py | 8 ++++++-- src/Util.py | 4 +++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/MaterialManager.py b/src/MaterialManager.py index bdfbaa2..e0d5f13 100644 --- a/src/MaterialManager.py +++ b/src/MaterialManager.py @@ -7,7 +7,7 @@ def __init__(self, params: list): self.params = params # other configurations - def changeMaterial(self, material) -> bool: + def changeMaterial(self, material) -> bool: returnText = "" match material: @@ -19,8 +19,12 @@ def changeMaterial(self, material) -> bool: self.carManager.setMaterial(materialType.Carbon) returnText = "Material is changed to Carbon." + case materialType.AlloyX: + self.carManager.setMaterial(materialType.AlloyX) + returnText = "Material is changed to AlloyX." + case _: - returnText = "Material seletion is invalid." + returnText = "Material selection is invalid." return self._announceMaterial(returnText) diff --git a/src/Util.py b/src/Util.py index 81ab0ba..7f3fb19 100644 --- a/src/Util.py +++ b/src/Util.py @@ -1,3 +1,5 @@ from enum import Enum -materialType = Enum('Titanium', 'Carbon') +materialType = Enum('Titanium', 'Carbon', 'AlloyX') + + From 24f78569d16192af3297749d2d529e9c47900406 Mon Sep 17 00:00:00 2001 From: Melis Atun <63464796+melisatuun@users.noreply.github.com> Date: Tue, 26 Oct 2021 12:52:26 +0300 Subject: [PATCH 5/5] merge with squash option * refactor * refactor with f-strings * refactor with f-strings --- src/MaterialManager.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/MaterialManager.py b/src/MaterialManager.py index 438f91f..01f657e 100644 --- a/src/MaterialManager.py +++ b/src/MaterialManager.py @@ -9,15 +9,18 @@ def __init__(self, params: list): def changeMaterial(self, material) -> bool: returnText = "" + textBaseForValidMaterial = "Material is changed to" match material: case materialType.Titanium: self.carManager.setMaterial(materialType.Titanium) - returnText = "Material is changed to Titanium." + returnText = f"{textBaseForValidMaterial} Titanium." case materialType.Carbon: self.carManager.setMaterial(materialType.Carbon) - returnText = "Material is changed to Carbon." + returnText = f"{textBaseForValidMaterial} Carbon." + + @@ -40,6 +43,7 @@ def _announceMaterial(self, text: str) -> bool: return returnValue + def _announceMaterial(self, text: str) -> bool: return self.announcer(text)