Пример #1
0
def test_add_keyword():
    d = dr.DictRegister([{'x': 1, 'y': 2}, {'x': 3, 'y': 4}])
    d.kadd('z', 3)

    assert len(d) == 2
    assert d == dr.DictRegister([{
        'x': 1,
        'y': 2,
        'z': 3
    }, {
        'x': 3,
        'y': 4,
        'z': 3
    }])
Пример #2
0
def test_find_unnamed_and_named():
    d = dr.DictRegister([{
        'a': 1,
        'b': 2,
        'c': 4
    }, {
        'a': 5,
        'b': 6,
        'c': 4
    }, {
        'b': 3,
        'c': 9
    }])

    assert d.find('a', b=6) == dr.DictRegister([{'a': 5, 'b': 6, 'c': 4}])
Пример #3
0
def test_find_greater_than():
    d = dr.DictRegister([{
        'a': 1,
        'b': 2,
        'c': 4
    }, {
        'a': 5,
        'b': 6,
        'c': 4
    }, {
        'b': 3,
        'c': 9
    }])

    assert d.find(b__gt=3) == dr.DictRegister([{'a': 5, 'b': 6, 'c': 4}])
Пример #4
0
def test_find_explicit_equal():
    d = dr.DictRegister([{
        'a': 1,
        'b': 2,
        'c': 4
    }, {
        'a': 5,
        'b': 6,
        'c': 4
    }, {
        'b': 3,
        'c': 9
    }])

    assert d.find(b__eq=6) == dr.DictRegister([{'a': 5, 'b': 6, 'c': 4}])
Пример #5
0
def test_find_multiple_key_values():
    d = dr.DictRegister([{
        'a': 1,
        'b': 2,
        'c': 4
    }, {
        'a': 5,
        'b': 6,
        'c': 4
    }, {
        'b': 3,
        'c': 9
    }])

    assert d.find(a=1, c=4) == dr.DictRegister([{'a': 1, 'b': 2, 'c': 4}])
Пример #6
0
def test_append_checks_if_mapping():
    d = dr.DictRegister()

    d.append({'a': 1, 'b': 2})

    with pytest.raises(TypeError):
        d.append([1, 2, 3, 4])
Пример #7
0
def test_append_works():
    d = dr.DictRegister()

    d.append({'a': 1, 'b': 2})

    assert len(d) == 1
    assert d[0] == {'a': 1, 'b': 2}
Пример #8
0
def test_find_single_key_value_multiple_results():
    d = dr.DictRegister([{
        'a': 1,
        'b': 2,
        'c': 4
    }, {
        'a': 5,
        'b': 6,
        'c': 4
    }, {
        'b': 3,
        'c': 9
    }])

    assert d.find(c=4) == dr.DictRegister([{
        'a': 1,
        'b': 2,
        'c': 4
    }, {
        'a': 5,
        'b': 6,
        'c': 4
    }])
Пример #9
0
def test_add_already_present_keyword():
    d = dr.DictRegister([{'x': 1, 'y': 2}])
    d.kadd('x', 3)

    assert len(d) == 1
    assert d == dr.DictRegister([{'x': {1, 3}, 'y': 2}])
Пример #10
0
def test_find_multiple_keys():
    d = dr.DictRegister([{'a': 1, 'b': 2}, {'a': 5, 'c': 6}, {'b': 3, 'c': 9}])

    assert d.find('a', 'b') == dr.DictRegister([{'a': 1, 'b': 2}])
Пример #11
0
def test_find_single_key_value():
    d = dr.DictRegister([{'a': 1, 'b': 2}, {'a': 5, 'c': 6}, {'b': 3, 'c': 9}])

    assert d.find(a=1) == dr.DictRegister([{'a': 1, 'b': 2}])
Пример #12
0
def test_init():
    dr.DictRegister()
Пример #13
0
def test_init_with_list_of_dicts():
    d = dr.DictRegister([{'a': 1, 'b': 2}])

    assert len(d) == 1
Пример #14
0
def test_mutable_sequence():
    assert isinstance(dr.DictRegister(), collections.MutableSequence)
Пример #15
0
def test_remove_keyword_value_not_present_from_multiple_values():
    d = dr.DictRegister([{'x': {2, 6}, 'y': 2}, {'x': 3, 'y': 4}])
    d.kremove('x', 5)

    assert len(d) == 2
    assert d == dr.DictRegister([{'x': {2, 6}, 'y': 2}, {'x': 3, 'y': 4}])
Пример #16
0
def test_remove_keyword_with_value():
    d = dr.DictRegister([{'x': 5, 'y': 2}, {'x': 3, 'y': 4}])
    d.kremove('y', 2)

    assert len(d) == 2
    assert d == dr.DictRegister([{'x': 5}, {'x': 3, 'y': 4}])
Пример #17
0
def test_remove_keyword():
    d = dr.DictRegister([{'x': 1, 'y': 2}, {'x': 3, 'y': 4}])
    d.kremove('x')

    assert len(d) == 2
    assert d == dr.DictRegister([{'y': 2}, {'y': 4}])
Пример #18
0
def test_remove_not_present_keyword():
    d = dr.DictRegister([{'x': 1, 'y': 2, 'z': 8}, {'x': 3, 'y': 4}])
    d.kremove('z')

    assert len(d) == 2
    assert d == dr.DictRegister([{'x': 1, 'y': 2}, {'x': 3, 'y': 4}])