def test_override_properties():
    document = {
        "foo": "bar",
        "spam": "eggs",
        "one": "two",
        "array": ["first", "second"],
    }
    override_properties(
        document,
        {("foo",): "baz", ("spam",): {}, ("not_found",): None, ("array", "1"): "last"},
    )
    assert document == {
        "foo": "baz",
        "spam": {},
        "one": "two",
        "array": ["first", "last"],
    }
Exemplo n.º 2
0
def override_target_properties(document, overrides):
    overridden = dict(document)
    for key, value in document.items():
        overridden[key] = override_properties(value, overrides.get(key, {}))
    return overridden