def test_delitem(self): with pytest.raises(NotImplementedError) as exc_info: del FrozenDict()['key'] assert exc_info.value.args == ('FrozenDict.__delitem__',) with pytest.raises(NotImplementedError) as exc_info: FrozenDict().__delitem__('key') assert exc_info.value.args == ('FrozenDict.__delitem__',)
def test_pop(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().pop('key') assert exc_info.value.args == ('FrozenDict.pop',)
def test_update(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().update({}) assert exc_info.value.args == ('FrozenDict.update',)
def test_clear(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().clear() assert exc_info.value.args == ('FrozenDict.clear',)
class TestFrozenDict(object): _frozendict_samples = [ FrozenDict(), FrozenDict({'key': 'value'}), FrozenDict({'key': False}), FrozenDict({'key': None}), FrozenDict({'key': True}), FrozenDict({'key': FrozenDict({'foo': 'bar', 'key': 1})}), ] @pytest.mark.parametrize('frozendict', _frozendict_samples) def test_str(self, frozendict): assert str(frozendict) == 'FrozenDict({})'.format(dict(frozendict)) @pytest.mark.parametrize('frozendict', _frozendict_samples) def test_repr(self, frozendict): assert repr(frozendict) == 'FrozenDict({})'.format(dict(frozendict)) def test_setitem(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict()['key'] = 'value' assert exc_info.value.args == ('FrozenDict.__setitem__',) with pytest.raises(NotImplementedError) as exc_info: FrozenDict().__setitem__('key', 'value') assert exc_info.value.args == ('FrozenDict.__setitem__',) def test_delitem(self): with pytest.raises(NotImplementedError) as exc_info: del FrozenDict()['key'] assert exc_info.value.args == ('FrozenDict.__delitem__',) with pytest.raises(NotImplementedError) as exc_info: FrozenDict().__delitem__('key') assert exc_info.value.args == ('FrozenDict.__delitem__',) def test_clear(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().clear() assert exc_info.value.args == ('FrozenDict.clear',) def test_update(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().update({}) assert exc_info.value.args == ('FrozenDict.update',) def test_pop(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().pop('key') assert exc_info.value.args == ('FrozenDict.pop',) def test_popitem(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().popitem() assert exc_info.value.args == ('FrozenDict.popitem',) def test_setdefault(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().setdefault('key', 'value') assert exc_info.value.args == ('FrozenDict.setdefault',) def test_copy(self): x = FrozenDict({'a': {}}) assert isinstance(x.copy(), FrozenDict) assert x['a'] is x.copy()['a'] def test_fromkeys(self): res = FrozenDict.fromkeys(['a']) assert isinstance(res, FrozenDict) assert res == FrozenDict({'a': None})
def test_fromkeys(self): res = FrozenDict.fromkeys(['a']) assert isinstance(res, FrozenDict) assert res == FrozenDict({'a': None})
def test_copy(self): x = FrozenDict({'a': {}}) assert isinstance(x.copy(), FrozenDict) assert x['a'] is x.copy()['a']
def test_setdefault(self): with pytest.raises(NotImplementedError) as exc_info: FrozenDict().setdefault('key', 'value') assert exc_info.value.args == ('FrozenDict.setdefault',)