예제 #1
0
def test_as_list_default(data):
    assert nested_get(data, ('a', 'b', 'c', 'd'), as_list=True) == []
    assert nested_get(data, ('a', 'b', 'c', 'd'), default='foo',
                      as_list=True) == ['foo']
예제 #2
0
def test_as_list(data):
    assert nested_get(data, ('a', 'b', 'c'), as_list=True) == [10]
    assert nested_get(data, ('a.b.c'), as_list=True) == [10]
    assert nested_get(data, ('a', 'b'), as_list=True) == [{'c': 10}]
    assert nested_get(data, ('a.b'), as_list=True) == [{'c': 10}]
예제 #3
0
def test_required_typeerror(data):
    with pytest.raises(TypeError):
        assert nested_get(data, ('a', 'b', 'c', 'd'), required=True)
예제 #4
0
def test_required_keyerror(data):
    with pytest.raises(KeyError):
        assert nested_get(data, ('z', ), required=True)
예제 #5
0
def test_default(data, keys, expected):
    assert nested_get(data, keys, default='hey') == expected
예제 #6
0
def test_basic(data, keys, expected):
    assert nested_get(data, keys) == expected