Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/fastavro/_validate_common.py: 50%
12 statements
« prev ^ index » next coverage.py v7.2.2, created at 2023-03-26 06:10 +0000
« prev ^ index » next coverage.py v7.2.2, created at 2023-03-26 06:10 +0000
1from collections import namedtuple
2import json
5class ValidationErrorData(
6 namedtuple("ValidationErrorData", ["datum", "schema", "field"])
7):
8 def __str__(self):
9 if self.datum is None:
10 return f"Field({self.field}) is None expected {self.schema}"
12 return (
13 f"{self.field} is <{self.datum}> of type "
14 + f"{type(self.datum)} expected {self.schema}"
15 )
18class ValidationError(Exception):
19 def __init__(self, *errors):
20 message = json.dumps([str(e) for e in errors], indent=2, ensure_ascii=False)
21 super().__init__(message)
22 self.errors = errors