summaryrefslogtreecommitdiff
path: root/tests/basics/ordereddict1.py
diff options
context:
space:
mode:
authorJim Mussared <jim.mussared@gmail.com>2020-04-23 01:10:30 +1000
committerDamien George <damien.p.george@gmail.com>2020-04-27 23:53:17 +1000
commit57fce3bdb203e9701dbd81ee108189898e19911b (patch)
treebffc02c12f2c5c78e082bec83e903c793cea778b /tests/basics/ordereddict1.py
parent347c8917dc8d2785fdbd8c9a0f554219e6216647 (diff)
py/objdict: Fix popitem for ordered dicts.
The popitem method wasn't implemented for ordered dicts and would result in an invalid state. Fixes issue #5956.
Diffstat (limited to 'tests/basics/ordereddict1.py')
-rw-r--r--tests/basics/ordereddict1.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/basics/ordereddict1.py b/tests/basics/ordereddict1.py
index d1633f0bb..270deab38 100644
--- a/tests/basics/ordereddict1.py
+++ b/tests/basics/ordereddict1.py
@@ -24,3 +24,23 @@ d["abc"] = 123
print(len(d))
print(list(d.keys()))
print(list(d.values()))
+
+# pop an element
+print(d.popitem())
+print(len(d))
+print(list(d.keys()))
+print(list(d.values()))
+
+# add an element after popping
+d["xyz"] = 321
+print(len(d))
+print(list(d.keys()))
+print(list(d.values()))
+
+# pop until empty
+print(d.popitem())
+print(d.popitem())
+try:
+ d.popitem()
+except:
+ print('empty')