Coverage for src/csv_schema_validator/types.py: 100%

6 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-12-23 15:34 +0100

1""" 

2Type definitions for CSV schema validation. 

3 

4This module provides type aliases and protocols for better type safety 

5and code documentation. 

6""" 

7from __future__ import annotations 

8 

9from typing import Any, Protocol 

10 

11from .core import FieldDict, SchemaDict, ValidationResult, BOOLEAN_VALUES 

12from .field_validators import ErrorDict, RowData, HeaderData, ValidationProtocol 

13 

14# Re-export for backward compatibility 

15__all__ = [ 

16 "ErrorDict", 

17 "FieldDict", 

18 "SchemaDict", 

19 "ValidationResult", 

20 "BOOLEAN_VALUES", 

21 "RowData", 

22 "HeaderData", 

23 "ValidationProtocol", 

24] 

25 

26# Error type constants 

27ERROR_TYPES = frozenset({ 

28 "CSVValidationError", 

29 "SchemaValidationError", 

30 "FieldValidationError", 

31 "TypeValidationError", 

32 "PatternValidationError", 

33 "EnumValidationError", 

34 "RangeValidationError", 

35 "RequiredFieldError", 

36 "FileError", 

37 "CSVFileError", 

38 "SchemaFileError", 

39 "EmptyFileError", 

40 "InvalidJSONError", 

41 "ValidationConfigurationError", 

42})