dcicutils 8.13.3.1b11__py3-none-any.whl → 8.13.3.1b12__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- dcicutils/structured_data.py +9 -4
- {dcicutils-8.13.3.1b11.dist-info → dcicutils-8.13.3.1b12.dist-info}/METADATA +1 -1
- {dcicutils-8.13.3.1b11.dist-info → dcicutils-8.13.3.1b12.dist-info}/RECORD +6 -6
- {dcicutils-8.13.3.1b11.dist-info → dcicutils-8.13.3.1b12.dist-info}/LICENSE.txt +0 -0
- {dcicutils-8.13.3.1b11.dist-info → dcicutils-8.13.3.1b12.dist-info}/WHEEL +0 -0
- {dcicutils-8.13.3.1b11.dist-info → dcicutils-8.13.3.1b12.dist-info}/entry_points.txt +0 -0
dcicutils/structured_data.py
CHANGED
@@ -57,7 +57,7 @@ class StructuredDataSet:
|
|
57
57
|
ref_lookup_nocache: bool = False,
|
58
58
|
norefs: bool = False, merge: bool = False,
|
59
59
|
progress: Optional[Callable] = None,
|
60
|
-
|
60
|
+
validator_hook: Optional[Callable] = None,
|
61
61
|
debug_sleep: Optional[str] = None) -> None:
|
62
62
|
self._progress = progress if callable(progress) else None
|
63
63
|
self._data = {}
|
@@ -76,7 +76,7 @@ class StructuredDataSet:
|
|
76
76
|
self._autoadd_properties = autoadd if isinstance(autoadd, dict) and autoadd else None
|
77
77
|
self._norefs = True if norefs is True else False
|
78
78
|
self._merge = True if merge is True else False # New merge functionality (2024-05-25)
|
79
|
-
self.
|
79
|
+
self._validator_hook = validator_hook if callable(validator_hook) else None # Testing support (2024-06-12)
|
80
80
|
self._debug_sleep = None
|
81
81
|
if debug_sleep:
|
82
82
|
try:
|
@@ -379,8 +379,13 @@ class StructuredDataSet:
|
|
379
379
|
structured_row_template = _StructuredRowTemplate(reader.header, schema)
|
380
380
|
structured_row = structured_row_template.create_row()
|
381
381
|
for column_name, value in row.items():
|
382
|
-
if self.
|
383
|
-
value = self.
|
382
|
+
if self._validator_hook:
|
383
|
+
value, validator_error = self._validator_hook(reader.sheet_name, column_name, value)
|
384
|
+
if validator_error:
|
385
|
+
self._note_error({
|
386
|
+
"src": create_dict(type=schema_name, row=reader.row_number),
|
387
|
+
"error": validator_error
|
388
|
+
}, "validation")
|
384
389
|
structured_row_template.set_value(structured_row, column_name, value, reader.file, reader.row_number)
|
385
390
|
if self._autoadd_properties:
|
386
391
|
self._add_properties(structured_row, self._autoadd_properties, schema)
|
@@ -66,7 +66,7 @@ dcicutils/secrets_utils.py,sha256=8dppXAsiHhJzI6NmOcvJV5ldvKkQZzh3Fl-cb8Wm7MI,19
|
|
66
66
|
dcicutils/sheet_utils.py,sha256=VlmzteONW5VF_Q4vo0yA5vesz1ViUah1MZ_yA1rwZ0M,33629
|
67
67
|
dcicutils/snapshot_utils.py,sha256=YDeI3vD-MhAtHwKDzfEm2q-n3l-da2yRpRR3xp0Ah1M,23021
|
68
68
|
dcicutils/ssl_certificate_utils.py,sha256=F0ifz_wnRRN9dfrfsz7aCp4UDLgHEY8LaK7PjnNvrAQ,9707
|
69
|
-
dcicutils/structured_data.py,sha256=
|
69
|
+
dcicutils/structured_data.py,sha256=1w832RpR6pKklRyV4KgMnTkL8PBlCOhwKZ8ED88dMjE,64761
|
70
70
|
dcicutils/submitr/progress_constants.py,sha256=5bxyX77ql8qEJearfHEvsvXl7D0GuUODW0T65mbRmnE,2895
|
71
71
|
dcicutils/submitr/ref_lookup_strategy.py,sha256=VJN-Oo0LLna6Vo2cu47eC-eU-yUC9NFlQP29xajejVU,4741
|
72
72
|
dcicutils/task_utils.py,sha256=MF8ujmTD6-O2AC2gRGPHyGdUrVKgtr8epT5XU8WtNjk,8082
|
@@ -75,8 +75,8 @@ dcicutils/trace_utils.py,sha256=g8kwV4ebEy5kXW6oOrEAUsurBcCROvwtZqz9fczsGRE,1769
|
|
75
75
|
dcicutils/validation_utils.py,sha256=cMZIU2cY98FYtzK52z5WUYck7urH6JcqOuz9jkXpqzg,14797
|
76
76
|
dcicutils/variant_utils.py,sha256=2H9azNx3xAj-MySg-uZ2SFqbWs4kZvf61JnK6b-h4Qw,4343
|
77
77
|
dcicutils/zip_utils.py,sha256=_Y9EmL3D2dUZhxucxHvrtmmlbZmK4FpSsHEb7rGSJLU,3265
|
78
|
-
dcicutils-8.13.3.
|
79
|
-
dcicutils-8.13.3.
|
80
|
-
dcicutils-8.13.3.
|
81
|
-
dcicutils-8.13.3.
|
82
|
-
dcicutils-8.13.3.
|
78
|
+
dcicutils-8.13.3.1b12.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
|
79
|
+
dcicutils-8.13.3.1b12.dist-info/METADATA,sha256=noJFXOxAJ5PwjMw07PBOj1McLkRQ4Ie1WVCMoq72Gls,3440
|
80
|
+
dcicutils-8.13.3.1b12.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
|
81
|
+
dcicutils-8.13.3.1b12.dist-info/entry_points.txt,sha256=W6kEWdUJk9tQ4myAgpehPdebcwvCAZ7UgB-wyPgDUMg,335
|
82
|
+
dcicutils-8.13.3.1b12.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|