summaryrefslogtreecommitdiffstatshomepage
path: root/tests/extmod/uheapq1.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/extmod/uheapq1.py')
-rw-r--r--tests/extmod/uheapq1.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/extmod/uheapq1.py b/tests/extmod/uheapq1.py
new file mode 100644
index 0000000000..e71f817ef8
--- /dev/null
+++ b/tests/extmod/uheapq1.py
@@ -0,0 +1,36 @@
+try:
+ import uheapq as heapq
+except:
+ import heapq
+
+try:
+ heapq.heappop([])
+except IndexError:
+ print("IndexError")
+
+try:
+ heapq.heappush((), 1)
+except TypeError:
+ print("TypeError")
+
+def pop_and_print(h):
+ l = []
+ while h:
+ l.append(str(heapq.heappop(h)))
+ print(' '.join(l))
+
+h = []
+heapq.heappush(h, 3)
+heapq.heappush(h, 1)
+heapq.heappush(h, 2)
+print(h)
+pop_and_print(h)
+
+h = [4, 3, 8, 9, 10, 2, 7, 11, 5]
+heapq.heapify(h)
+print(h)
+heapq.heappush(h, 1)
+heapq.heappush(h, 6)
+heapq.heappush(h, 12)
+print(h)
+pop_and_print(h)