|
|
@@ -0,0 +1,27 @@
|
|
|
+# test deletion
|
|
|
+rnd = 0
|
|
|
+keys = []
|
|
|
+while True:
|
|
|
+ keys.append(rnd)
|
|
|
+ rnd = ((rnd * 5) + 1) & 1023
|
|
|
+ if rnd == 0:
|
|
|
+ break
|
|
|
+
|
|
|
+assert len(keys) == 1024
|
|
|
+
|
|
|
+a = {k: k for k in keys}
|
|
|
+
|
|
|
+for i in range(10000):
|
|
|
+ if i % 2 == 0:
|
|
|
+ # del all keys
|
|
|
+ for k in keys:
|
|
|
+ del a[k]
|
|
|
+ assert len(a) == 0
|
|
|
+ else:
|
|
|
+ # add keys back
|
|
|
+ for k in keys:
|
|
|
+ a[k] = k
|
|
|
+ assert len(a) == len(keys)
|
|
|
+
|
|
|
+assert len(a) == len(keys)
|
|
|
+assert list(a.keys()) == keys # order matters
|