Exemplo n.º 1
0
def test_nested_list():
    """Test that nested lists are correctly coerced."""
    tmp = NavigableDict({'a': [{'one': 1}, NavigableDict({'two': 2}), 3]})
    assert tmp.a[0].one == 1
    assert tmp.a[1].two == 2
    assert tmp.a[2] == 3
    assert tmp.get('a.0.one') == 1
    assert tmp.get('a[0].one') == 1
    assert tmp.get('a.1.two') == 2
    assert tmp.get('a.2') == 3
Exemplo n.º 2
0
def test_nested_get_value():
    """Test that accessing a nested value works."""
    tmp = NavigableDict({'a': {'one': 1}})
    assert tmp.a.one == 1
    assert tmp['a'].one == 1
    assert tmp['a']['one'] == 1
    assert tmp['a']['one'] == tmp.a.one
    assert tmp.get('a.one') == 1
Exemplo n.º 3
0
def test_nested_list_get():
    """Test that invalid list access is handled correctly."""
    tmp = NavigableDict({'a': [{'one': 1}, {'one': 2}, 3]})
    assert tmp.get('a.one') == [1, 2, None]
Exemplo n.º 4
0
def test_nested_list_fail():
    """Test that nested lists are correctly coerced."""
    tmp = NavigableDict({'a': [{'one': 1}, NavigableDict({'two': 2}), 3]})
    assert tmp.get('a[4].one') is None
Exemplo n.º 5
0
def test_fail_missing_default():
    """Test that accessing a mising value with a default returns the default."""
    tmp = NavigableDict({'a': 1})
    assert tmp.get('b') is None
    assert tmp.get('b', default=2) == 2