Требуется и дополнительные свойства не работает для модуля jsonschema Python - PullRequest
0 голосов
/ 26 марта 2019

У меня есть следующий код:

from jsonschema import validate
schema_data = {
    "type" : "object",
    "properties" : {
        "price" : {"type" : "number"},
        "name" : {"type" : "string"},
        "additional" : {"type" : "number"},
        },
    "required": ["price", "name", "additional"],
    "additionalProperties": False
}

json_data = {"name" : "Eggs", "price" : 34.99, "new": 90}

Это должно дать мне ошибку для required и additionalProperties, так как additional отсутствует в json_data, а new нетв schema_data. Но скрипт не выдает никакой ошибки .

Нужно ли что-нибудь дополнительное для установки?У меня следующая конфигурация:

Python 2.7.12,
jsonschema==3.0.1
attrs==19.1.0
six==1.12.0
pyrsistent==0.14.11

1 Ответ

2 голосов
/ 26 марта 2019

Вам нужно выполнить приведенную ниже команду для получения ошибки

validate(json_data, schema_data)

Итак, сначала вы получите ошибку

'additional' is a required property

После исправления вы получите ошибку для

Additional properties are not allowed ('new' was unexpected)
...