diff --git a/02/ex2/ft_custom_errors.py b/02/ex2/ft_custom_errors.py new file mode 100644 index 0000000..5da19b2 --- /dev/null +++ b/02/ex2/ft_custom_errors.py @@ -0,0 +1,33 @@ +class GardenError(Exception): + def __init__(self, message): + self.message = message + + def __str__(self): + return f"Caught a garden error: {self.message}" + + +class PlantError(GardenError): + def __init__(self, message): + self.message = message + + def __str__(self): + return f"Caught PlantError: {self.message}" + + +class WaterError(GardenError): + def __init__(self, message): + self.message = message + + def __str__(self): + return f"Caught WaterError: {self.message}" + + +if __name__ == "__main__": + try: + raise PlantError("The tomato plant is wilting!") + except PlantError as err: + print(err) + try: + raise WaterError("Not enough water in the tank!") + except WaterError as err: + print(err)