From: Simon Cozens Date: Wed, 16 Aug 2023 23:23:09 +0000 (+0100) Subject: Add test for proto wellformedness (no missing required fields) X-Git-Tag: v0.4.6~9^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e6b9d0c8c86b353d1671b2051e893ce89905c4bf;p=thirdparty%2Fgoogle%2Ffonts.git Add test for proto wellformedness (no missing required fields) --- diff --git a/tests/test_wellformed.py b/tests/test_wellformed.py new file mode 100644 index 0000000000..ac0eafd376 --- /dev/null +++ b/tests/test_wellformed.py @@ -0,0 +1,19 @@ +import pytest +from axisregistry import AxisRegistry +from axisregistry.axes_pb2 import AxisProto + +registry = AxisRegistry() + +OPTIONAL_FIELDS = ["illustration_url", "is_parametric"] + + +@pytest.mark.parametrize("axis_tag", registry.keys()) +def test_proto_wellformed(axis_tag): + axis = registry[axis_tag] + raw_fields = dict([(k.name, v) for k, v in axis.ListFields()]) + for field in AxisProto.DESCRIPTOR.fields: + field_name = field.name + if field_name in OPTIONAL_FIELDS: + continue + assert field_name in raw_fields, field_name + assert raw_fields[field_name] is not None, field_name