diff --git a/src/caosadvancedtools/table_json_conversion/validation_utils.py b/src/caosadvancedtools/table_json_conversion/_validation_utils.py similarity index 97% rename from src/caosadvancedtools/table_json_conversion/validation_utils.py rename to src/caosadvancedtools/table_json_conversion/_validation_utils.py index f1e77f48f7120c5dcd812cb42ba4757a06deb762..5dfd171e48a8141d27f52511e716ddeed75edd89 100644 --- a/src/caosadvancedtools/table_json_conversion/validation_utils.py +++ b/src/caosadvancedtools/table_json_conversion/_validation_utils.py @@ -30,8 +30,8 @@ from typing import Union import jsonschema -def _validate_jsonschema(instance: Union[dict, int, str, bool], - schema: Union[str, dict]): +def validate_jsonschema(instance: Union[dict, int, str, bool], + schema: Union[str, dict]): """ A table_json_conversion compatible variant of jsonschema.validate(). Accepts instances with datetime instances and None in not-nullable entries. diff --git a/src/caosadvancedtools/table_json_conversion/convert.py b/src/caosadvancedtools/table_json_conversion/convert.py index 33432b85298f98125dc7861fad82d220a6d4b5aa..dc2126d7bc7d3cff270e9920b6dea392be2a9348 100644 --- a/src/caosadvancedtools/table_json_conversion/convert.py +++ b/src/caosadvancedtools/table_json_conversion/convert.py @@ -36,7 +36,7 @@ import jsonschema from openpyxl import load_workbook from openpyxl.worksheet.worksheet import Worksheet -from .validation_utils import _validate_jsonschema +from ._validation_utils import validate_jsonschema from caosadvancedtools.table_json_conversion import xlsx_utils from caosadvancedtools.table_json_conversion.fill_xlsx import read_or_dict @@ -329,7 +329,7 @@ class XLSXConverter: for e in exceptions]) raise jsonschema.ValidationError(mess) if validate: - _validate_jsonschema(self._result, self._schema) + validate_jsonschema(self._result, self._schema) if self._errors: raise RuntimeError("There were error while handling the XLSX file.") return self._result @@ -564,7 +564,7 @@ class XLSXConverter: value = False if value == 1 or isinstance(value, str) and '=true()' == value.lower(): value = True - _validate_jsonschema(value, subschema) + validate_jsonschema(value, subschema) # Finally: convert to target type return self.PARSER[subschema.get("type", "string")](value) diff --git a/src/caosadvancedtools/table_json_conversion/fill_xlsx.py b/src/caosadvancedtools/table_json_conversion/fill_xlsx.py index 1f39f66d38c27c41389ce14a184671a4be23271b..e6268fd63e4b436ec8ae86d35b865e3d7faa9b03 100644 --- a/src/caosadvancedtools/table_json_conversion/fill_xlsx.py +++ b/src/caosadvancedtools/table_json_conversion/fill_xlsx.py @@ -33,7 +33,7 @@ from jsonschema.exceptions import ValidationError from openpyxl import load_workbook, Workbook from openpyxl.cell.cell import ILLEGAL_CHARACTERS_RE -from .validation_utils import _validate_jsonschema +from ._validation_utils import validate_jsonschema from .xlsx_utils import ( array_schema_from_model_schema, get_foreign_key_columns, @@ -360,7 +360,7 @@ validation_schema: dict, optional if list(validation_schema['properties'].values())[0]["type"] != "array": validation_schema = array_schema_from_model_schema(read_or_dict(validation_schema)) try: - _validate_jsonschema(data, validation_schema) + validate_jsonschema(data, validation_schema) except ValidationError as verr: print(verr.message) raise verr