Coverage for rfpy/model/exc.py: 100%

35 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-04-24 10:52 +0000

1class BusinessRuleViolation(Exception): 

2 def __init__(self, message): 

3 self.message = message 

4 

5 

6class DeadlineNotPassed(BusinessRuleViolation): 

7 pass 

8 

9 

10class DeadlineHasPassed(BusinessRuleViolation): 

11 pass 

12 

13 

14class IllegalStatusAction(BusinessRuleViolation): 

15 pass 

16 

17 

18class CosmeticQuestionEditViolation(BusinessRuleViolation): 

19 pass 

20 

21 

22class QuestionnaireStructureException(Exception): 

23 pass 

24 

25 

26class WeightingsNotLoadedException(Exception): 

27 pass 

28 

29 

30class DuplicateDataProvided(Exception): 

31 def __init__(self, message): 

32 self.message = message 

33 

34 

35class ValidationFailure(Exception): 

36 def __init__(self, message, errors_list=None): 

37 super(ValidationFailure, self).__init__(message) 

38 self.message = message 

39 if errors_list is None: 

40 self.errors_list = [message] 

41 else: 

42 self.errors_list = errors_list 

43 

44 def __str__(self): 

45 msg = super(ValidationFailure, self).__str__() 

46 errlist = self.errors_list if self.errors_list else [] 

47 errs = "\n -".join(errlist) 

48 return f"{msg} {errs}" 

49 

50 

51class ConfigurationError(Exception): 

52 pass 

53 

54 

55class DuplicateQuestionDefinition(Exception): 

56 def __init__(self, message): 

57 self.message = message