Example #1
0
def test_error_load_single_field_type(single_schema):
    with pytest.raises(ValidationError) as excinfo:
        schema_load(single_schema, {"child": {"id": "foo"}})

    errors = excinfo.value.messages
    assert errors == {
        "child": {"id": [fields.Integer().error_messages["invalid"]]}
    }
Example #2
0
def test_error_load_many_missing(many_schema, error_messages):
    with pytest.raises(ValidationError) as excinfo:
        schema_load(many_schema, {})

    errors = excinfo.value.messages
    assert errors == {"children": [error_messages["required"]]}
Example #3
0
def test_load_single(single_schema):
    data = schema_load(single_schema, {"child": {"id": "1"}})

    assert data == {"child": {"id": 1}}
Example #4
0
def test_load_many(many_schema):
    data = schema_load(many_schema, {"children": [{"id": "1"}, {"id": "2"}]})

    assert data == {"children": [{"id": 1}, {"id": 2}]}
Example #5
0
def test_error_load_many_type(many_schema, error_messages):
    with pytest.raises(ValidationError) as excinfo:
        schema_load(many_schema, {"children": {"id": 1}})

    errors = excinfo.value.messages
    assert errors == {"children": [error_messages["type"]]}