From 3fa0ec7bc09fdb29a7c3b80d02984823305e7064 Mon Sep 17 00:00:00 2001 From: florian <f.spreckelsen@inidscale.com> Date: Tue, 24 Oct 2023 17:53:36 +0200 Subject: [PATCH] TST: Test list of references --- unittests/test_json_schema_exporter.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/unittests/test_json_schema_exporter.py b/unittests/test_json_schema_exporter.py index 18b7a418..3dafab2d 100644 --- a/unittests/test_json_schema_exporter.py +++ b/unittests/test_json_schema_exporter.py @@ -321,10 +321,27 @@ def test_rt_with_references(): assert "OtherTextProp" in props assert props["OtherTextProp"]["type"] == "string" - rt = db.RecordType() - rt.add_property(name="RefProp", datatype=db.LIST(db.REFERENCE)) + rt = db.RecordType(name="TestType", description="Some description") + rt.add_property(name="RefProp", datatype=db.LIST(db.REFERENCE), + description="I'm a list of references.") schema = rtjs(rt) + assert schema["title"] == rt.name + assert schema["description"] == rt.description + assert "RefProp" in schema["properties"] + ref_prop = schema["properties"]["RefProp"] + assert ref_prop["type"] == "array" + assert "description" in ref_prop + assert ref_prop["description"] == "I'm a list of references." + assert "items" in ref_prop + items = ref_prop["items"] + assert "enum" in items + assert isinstance(items["enum"], list) + assert len(items["enum"]) == len( + db.execute_query("SELECT name, id FROM RECORD")) + len( + db.execute_query("SELECT name, id FROM FILE")) + assert "oneOf" not in items + assert "description" not in items rt = db.RecordType() rt.add_property(name="RefProp", datatype=db.LIST("OtherType")) -- GitLab