comparison data_schema/__init__.py @ 14:cfb97c7c9e5b

Simplify ctor of ValidationProblem somewhat
author Franz Glasner <fzglas.hg@dom66.de>
date Fri, 07 Jul 2023 02:13:16 +0200
parents 940676a0de84
children 696b83f29363
comparison
equal deleted inserted replaced
13:940676a0de84 14:cfb97c7c9e5b
179 severity=None, 179 severity=None,
180 hint=None, 180 hint=None,
181 context=None, 181 context=None,
182 cause=None, 182 cause=None,
183 index=None): 183 index=None):
184 if code is not None: 184 if code is None:
185 # check validity 185 raise TypeError("`code' must be given")
186 if code not in ERRORS and code not in WARNINGS: 186 # check validity
187 raise ValueError( 187 if code not in ERRORS and code not in WARNINGS:
188 "unknown validation error code: {}".format(code)) 188 raise ValueError(
189 self.code = code 189 "unknown validation error code: {}".format(code))
190 if severity is None: 190 self.code = code
191 # autodetermine 191 if severity is None:
192 if code in ERRORS: 192 # autodetermine
193 self.severity = ERROR 193 if code in ERRORS:
194 elif code in WARNINGS: 194 self.severity = ERROR
195 self.severity = WARNING 195 elif code in WARNINGS:
196 else: 196 self.severity = WARNING
197 assert False 197 else:
198 else: 198 assert False
199 self.severity = severity 199 else:
200 else: 200 self.severity = severity
201 raise TypeError("`code' must be given")
202 self.hint = hint 201 self.hint = hint
203 self.context = context 202 self.context = context
204 if cause: 203 if cause:
205 if not isinstance(cause, (list, tuple, set, frozenset)): 204 if not isinstance(cause, (list, tuple, set, frozenset)):
206 cause = (cause, ) 205 cause = (cause, )