Coverage for src / ezcompiler / utils / validators / __init__.py: 100.00%

10 statements  

« prev     ^ index     » next       coverage.py v7.13.5, created at 2026-03-27 06:49 +0000

1# /////////////////////////////////////////////////////////////// 

2# VALIDATORS - Validation utilities package 

3# Project: ezcompiler 

4# /////////////////////////////////////////////////////////////// 

5 

6""" 

7Validators package - Modular validation utilities for EzCompiler. 

8 

9This package provides validation functions organized by domain: 

10- format_validators: Version, email, URL validation 

11- path_validators: File and directory path validation 

12- type_validators: Type checking and validation 

13- value_validators: Range, length, choice validation 

14- schema_validators: Schema and configuration validation 

15- domain_validators: Domain-specific validators (compiler, upload) 

16- string_validators: String utilities and pattern validation 

17- meta_validators: Meta-validation utilities 

18 

19For backward compatibility, all validators are re-exported at package level. 

20""" 

21 

22from __future__ import annotations 

23 

24# /////////////////////////////////////////////////////////////// 

25# IMPORTS 

26# /////////////////////////////////////////////////////////////// 

27# Domain validators 

28from .domain_validators import ( 

29 validate_compiler_name, 

30 validate_upload_structure, 

31) 

32 

33# Format validators 

34from .format_validators import ( 

35 validate_email, 

36 validate_url, 

37 validate_version_string, 

38) 

39 

40# Meta validators 

41from .meta_validators import validate_multiple 

42 

43# Path validators 

44from .path_validators import ( 

45 validate_directory_path, 

46 validate_file_path, 

47) 

48 

49# Schema validators 

50from .schema_validators import ( 

51 validate_config_dict, 

52 validate_dict_schema, 

53 validate_field_types, 

54 validate_required_fields, 

55) 

56 

57# String validators 

58from .string_validators import ( 

59 sanitize_filename, 

60 validate_pattern, 

61) 

62 

63# Type validators 

64from .type_validators import ( 

65 validate_boolean, 

66 validate_non_negative_integer, 

67 validate_positive_integer, 

68 validate_type, 

69) 

70 

71# Value validators 

72from .value_validators import ( 

73 validate_choice, 

74 validate_length, 

75 validate_list_length, 

76 validate_not_empty, 

77 validate_numeric_range, 

78 validate_one_of, 

79 validate_string_length, 

80 validate_value_in_range, 

81) 

82 

83# /////////////////////////////////////////////////////////////// 

84# PUBLIC API 

85# /////////////////////////////////////////////////////////////// 

86__all__ = [ 

87 # Format validators 

88 "validate_version_string", 

89 "validate_email", 

90 "validate_url", 

91 # Path validators 

92 "validate_file_path", 

93 "validate_directory_path", 

94 # Type validators 

95 "validate_boolean", 

96 "validate_positive_integer", 

97 "validate_non_negative_integer", 

98 "validate_type", 

99 # Value validators 

100 "validate_string_length", 

101 "validate_numeric_range", 

102 "validate_list_length", 

103 "validate_choice", 

104 "validate_not_empty", 

105 "validate_one_of", 

106 "validate_value_in_range", 

107 "validate_length", 

108 # Schema validators 

109 "validate_required_fields", 

110 "validate_field_types", 

111 "validate_config_dict", 

112 "validate_dict_schema", 

113 # Domain validators 

114 "validate_compiler_name", 

115 "validate_upload_structure", 

116 # String validators 

117 "sanitize_filename", 

118 "validate_pattern", 

119 # Meta validators 

120 "validate_multiple", 

121]