Skip to content
Snippets Groups Projects

jsex / yaml parser

Merged Daniel Hornung requested to merge f-more-jsonschema-export into dev
All threads resolved!
@@ -35,7+35,7 @@
from caosadvancedtools.json_schema_exporter import recordtype_to_json_schema as rtjs
from caosadvancedtools.models.parser import parse_model_from_string
GLOBAL_MODEL = parse_model_from_string("""
RT1:
description: some description
@@ -914,7+914,7 @@
schema, uischema = rtjs(model.get_deep("RT21"), additional_properties=False,
do_not_create=["RT1"], multiple_choice=["RT1"], rjsf=True)
assert schema["properties"]["RT1"]["uniqueItems"] is True
assert str(uischema) == "{'RT1': {'ui:widget': 'checkboxes', 'ui:options': {'inline': True}}}"
assert str(uischema) == "{'RT1': {'ui:widget': 'checkboxes', 'ui:inline': True}}"
# second level
schema, uischema = rtjs(model.get_deep("RT3"), additional_properties=False,
do_not_create=["RT1"], multiple_choice=["RT1"], rjsf=True)
assert schema["properties"]["RT21"]["properties"]["RT1"]["uniqueItems"] is True
assert (str(uischema)
== "{'RT21': {'RT1': {'ui:widget': 'checkboxes', 'ui:options': {'inline': True}}}}")
== "{'RT21': {'RT1': {'ui:widget': 'checkboxes', 'ui:inline': True}}}")
# second level with lists
schema, uischema = rtjs(model.get_deep("RT4"), additional_properties=False,
@@ -929,7 +929,7 @@ RT4:
assert schema["properties"]["RT21"]["items"]["properties"]["RT1"]["uniqueItems"] is True
assert (str(uischema) ==
"{'RT21': {'items': {'RT1': {'ui:widget': 'checkboxes', "
"'ui:options': {'inline': True}}}}}")
"'ui:inline': True}}}}")
@patch("linkahead.execute_query", new=Mock(side_effect=_mock_execute_query))
@@ -958,7 +958,7 @@ RT3:
merged_dict, merged_dict_ui = jsex.merge_schemas(schemas_dict, uischemas_dict)
assert merged_dict_ui["schema_2"] == merged_dict_ui["schema_3"]
assert (str(merged_dict_ui["schema_2"])
== "{'RT1': {'ui:widget': 'checkboxes', 'ui:options': {'inline': True}}}")
== "{'RT1': {'ui:widget': 'checkboxes', 'ui:inline': True}}")
# Using lists
schemas_list = [schema_2, schema_3]
@@ -979,7 +979,7 @@ RT3:
assert array2["items"] == schema_2
assert array2_ui["items"] == uischema_2
assert (str(array2_ui["items"])
== "{'RT1': {'ui:widget': 'checkboxes', 'ui:options': {'inline': True}}}")
== "{'RT1': {'ui:widget': 'checkboxes', 'ui:inline': True}}")
@patch("linkahead.execute_query", new=Mock(side_effect=_mock_execute_query))
Loading