summaryrefslogtreecommitdiff
path: root/tests/utils_tests/test_datastructures.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/utils_tests/test_datastructures.py')
-rw-r--r--tests/utils_tests/test_datastructures.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/utils_tests/test_datastructures.py b/tests/utils_tests/test_datastructures.py
index 0f520ff9e7..ea2b147953 100644
--- a/tests/utils_tests/test_datastructures.py
+++ b/tests/utils_tests/test_datastructures.py
@@ -101,6 +101,24 @@ class MultiValueDictTests(SimpleTestCase):
self.assertEqual({}, MultiValueDict().dict())
+ def test_getlist_doesnt_mutate(self):
+ x = MultiValueDict({'a': ['1', '2'], 'b': ['3']})
+ values = x.getlist('a')
+ values += x.getlist('b')
+ self.assertEqual(x.getlist('a'), ['1', '2'])
+
+ def test_internal_getlist_does_mutate(self):
+ x = MultiValueDict({'a': ['1', '2'], 'b': ['3']})
+ values = x._getlist('a')
+ values += x._getlist('b')
+ self.assertEqual(x._getlist('a'), ['1', '2', '3'])
+
+ def test_getlist_default(self):
+ x = MultiValueDict({'a': [1]})
+ MISSING = object()
+ values = x.getlist('b', default=MISSING)
+ self.assertIs(values, MISSING)
+
class ImmutableListTests(SimpleTestCase):