Ejemplo n.º 1
0
def test_RestrictedMapping_setitem():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'))
    dct['a'] = 'foo'
    assert dct == {'a': 'foo'}
    dct['b'] = 'bar'
    assert dct == {'a': 'foo', 'b': 'bar'}
    with pytest.raises(KeyError, match=r"^'baz'$"):
        dct['baz'] = 'c'
Ejemplo n.º 2
0
def test_RestrictedMapping_delitem():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'), a=1, b=2)
    assert dct == {'a': 1, 'b': 2}
    del dct['b']
    assert dct == {'a': 1}
    with pytest.raises(KeyError, match=r"^'c'$"):
        del dct['c']
    with pytest.raises(KeyError, match=r"^'baz'$"):
        del dct['baz']
Ejemplo n.º 3
0
def test_RestrictedMapping_repr():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'), a=1, b=2)
    assert repr(dct) == repr({'a': 1, 'b': 2})
Ejemplo n.º 4
0
def test_RestrictedMapping_len():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'), a=1, b=2)
    assert len(dct) == 2
Ejemplo n.º 5
0
def test_RestrictedMapping_iter():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'), a=1, b=2)
    assert tuple(iter(dct)) == ('a', 'b')
Ejemplo n.º 6
0
def test_RestrictedMapping_getitem():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'), a=1, b=2, c=3)
    assert dct == {'a': 1, 'b': 2, 'c': 3}
Ejemplo n.º 7
0
def test_RestrictedMapping_init_with_allowed_keys():
    dct = utils.RestrictedMapping(allowed_keys=('a', 'b', 'c'), a=1)
    assert dct._allowed_keys == {'a', 'b', 'c'}
    assert dct == {'a': 1}
Ejemplo n.º 8
0
def test_RestrictedMapping_init_with_defaults():
    dct = utils.RestrictedMapping({'a': 1, 'b': 2, 'c': 3})
    assert dct._allowed_keys == {'a', 'b', 'c'}
    assert dct == {'a': 1, 'b': 2, 'c': 3}