Coverage for src\tempstick_py\exceptions.py: 92%

28 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2022-09-11 22:38 -0700

1class TempStickException(Exception): 

2 """Base class for other exceptions""" 

3 

4 def __init__(self, message="Generic error"): 

5 self.message = message 

6 super().__init__(self.message) 

7 

8 

9class FilterRemovesRange(TempStickException): 

10 """Exception raised when provided filter would filter entire range.""" 

11 

12 def __init__( 

13 self, 

14 filter=None, 

15 range=None, 

16 range_lower=None, 

17 range_upper=None, 

18 message="Entire range removed by filter.", 

19 ): 

20 self.filter = filter 

21 self.range = range if range else (range_lower, range_upper) 

22 self.range_lower = range_lower 

23 self.range_upper = range_upper 

24 self.message = message 

25 super().__init__(self.message) 

26 

27 def __str__(self) -> str: 

28 return "{} -> {}".format(self.filter, self.message) 

29 

30 

31class ResponseError(Exception): 

32 def __init__( 

33 self, type: str, message="Invalid response from target.", *args: object 

34 ) -> None: 

35 self.response_type = type 

36 self.message = message 

37 super().__init__(self.message) 

38 

39 

40class InvalidApiKeyError(ResponseError): 

41 """Exception raised when an invalid API key is used.""" 

42 

43 def __init__( 

44 self, 

45 type: str, 

46 description: str, 

47 message="Invalid API key used.", 

48 *args: object 

49 ) -> None: 

50 self.description = description 

51 self.type = type 

52 self.message = message 

53 

54 super().__init__(self.type, self.message, *args) 

55 

56 def __str__(self) -> str: 

57 # debug_print("type", self.type, self.__name__) 

58 # print("hello") 

59 # value = self.message 

60 value = "{type}|{description} -> {message}".format( 

61 type=self.type, description=self.description, message=self.message 

62 ) 

63 return value