INNER CODE UNIT · Python
additional_properties
yannh/kubeconform · scripts/openapi2jsonschema.py:23
def additional_properties(data, skip=False):
"This recreates the behaviour of kubectl at https://github.com/kubernetes/kubernetes/blob/225b9119d6a8f03fcbe3cc3d590c261965d928d0/pkg/kubectl/validation/schema.go#L312"
if isinstance(data, dict):
if "properties" in data and not skip:
if "additionalProperties" not in data:
data["additionalProperties"] = False
for _, v in data.items():
additional_properties(v)
return data
def test_replace_int_or_string():
for test in iter([{
"input": {"something": {"format": "int-or-string"}},
"expect": {'something': {'oneOf': [{'type': 'string'}, {'type': 'integer'}]}}
},{
"input": {"something": {"format": "string"}},
"expect": {"something": {"format": "string"}},
}]):