From a731343f4b009e8afdbe21f44ddbaaa108381853 Mon Sep 17 00:00:00 2001 From: ianb Date: Tue, 26 Sep 2006 17:11:04 +0000 Subject: Added some tests for multidict; fixed setdefault --- tests/test_multidict.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 tests/test_multidict.py (limited to 'tests') diff --git a/tests/test_multidict.py b/tests/test_multidict.py new file mode 100644 index 0000000..494b0b2 --- /dev/null +++ b/tests/test_multidict.py @@ -0,0 +1,24 @@ +from paste.util.multidict import MultiDict +from py.test import raises + +def test_dict(): + d = MultiDict({'a': 1}) + assert d.items() == [('a', 1)] + d['b'] = 2 + d['c'] = 3 + assert d.items() == [('a', 1), ('b', 2), ('c', 3)] + d['b'] = 4 + assert d.items() == [('a', 1), ('c', 3), ('b', 4)] + d.add('b', 5) + raises(KeyError, 'd.getone("b")') + assert d.getall('b') == [4, 5] + assert d.items() == [('a', 1), ('c', 3), ('b', 4), ('b', 5)] + del d['b'] + assert d.items() == [('a', 1), ('c', 3)] + assert d.pop('xxx', 5) == 5 + assert d.getone('a') == 1 + assert d.popitem() == ('c', 3) + assert d.items() == [('a', 1)] + item = [] + assert d.setdefault('z', item) is item + assert d.items() == [('a', 1), ('z', item)] -- cgit v1.2.1