Coverage for src/symphra_modules/exceptions.py: 100.00%

1"""模块管理系统的异常定义."""

2

3

4 class ModuleError(Exception):

5 """模块系统的基类异常."""

6

7 def __init__(self, message: str, module_name: str | None = None) -> None:

8 """初始化异常.

9

10 Args:

11 message: 错误消息

12 module_name: 模块名称（可选）

13 """

14 super().__init__(message)

15 self.module_name = module_name

16

17

18 class ModuleNotFoundException(ModuleError):

19 """模块未找到异常."""

20

21

22 class ModuleLoadError(ModuleError):

23 """模块加载失败异常."""

24

25

26 class ModuleConfigError(ModuleError):

27 """模块配置异常."""

28

29

30 class ConfigValidationError(ModuleConfigError):

31 """配置验证错误异常."""

32

33

34 class ModuleStateError(ModuleError):

35 """模块状态异常."""

36

37 def __init__(

38 self,

39 message: str,

40 module_name: str | None = None,

41 current_state: str | None = None,

42 expected_states: list[str] | None = None,

43 ) -> None:

44 """初始化状态异常.

45

46 Args:

47 message: 错误消息

48 module_name: 模块名称（可选）

49 current_state: 当前状态（可选）

50 expected_states: 期望状态列表（可选）

51 """

52 super().__init__(message, module_name)

53 self.current_state = current_state

54 self.expected_states = expected_states or []

55

56

57 class ModuleDependencyError(ModuleError):

58 """模块依赖错误异常."""

59

60 def __init__(

61 self,

62 message: str,

63 module_name: str | None = None,

64 missing_dependencies: list[str] | None = None,

65 circular_dependencies: list[str] | None = None,

66 ) -> None:

67 """初始化依赖异常.

68

69 Args:

70 message: 错误消息

71 module_name: 模块名称（可选）

72 missing_dependencies: 缺失的依赖列表（可选）

73 circular_dependencies: 循环依赖列表（可选）

74 """

75 super().__init__(message, module_name)

76 self.missing_dependencies = missing_dependencies or []

77 self.circular_dependencies = circular_dependencies or []

78

79

80 class EventError(ModuleError):

81 """事件系统错误异常."""