summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--tests/extmod/btree1.py56
-rw-r--r--tests/extmod/btree1.py.exp29
2 files changed, 85 insertions, 0 deletions
diff --git a/tests/extmod/btree1.py b/tests/extmod/btree1.py
new file mode 100644
index 0000000000..75405bc4f0
--- /dev/null
+++ b/tests/extmod/btree1.py
@@ -0,0 +1,56 @@
+try:
+ import btree
+except ImportError:
+ print("SKIP")
+ import sys
+ sys.exit()
+
+db = btree.open(None)
+db[b"foo3"] = b"bar3"
+db[b"foo1"] = b"bar1"
+db[b"foo2"] = b"bar2"
+db[b"bar1"] = b"foo1"
+
+print(db[b"foo2"])
+try:
+ print(db[b"foo"])
+except KeyError:
+ print("KeyError")
+print(db.get(b"foo"))
+print(db.get(b"foo", b"dflt"))
+
+del db[b"foo2"]
+try:
+ del db[b"foo"]
+except KeyError:
+ print("KeyError")
+
+for k, v in db.items():
+ print((k, v))
+
+print("---")
+for k, v in db.items(None, None):
+ print((k, v))
+
+print("---")
+for k, v in db.items(b"f"):
+ print((k, v))
+
+print("---")
+for k, v in db.items(b"f", b"foo3"):
+ print((k, v))
+
+print("---")
+for k, v in db.items(None, b"foo3"):
+ print((k, v))
+
+print("---")
+for k, v in db.items(b"f", b"foo3", btree.INCL):
+ print((k, v))
+
+print("---")
+for k, v in db.items(None, None, btree.DESC):
+ print((k, v))
+
+print(list(db.keys()))
+print(list(db.values()))
diff --git a/tests/extmod/btree1.py.exp b/tests/extmod/btree1.py.exp
new file mode 100644
index 0000000000..494eb6a081
--- /dev/null
+++ b/tests/extmod/btree1.py.exp
@@ -0,0 +1,29 @@
+b'bar2'
+KeyError
+None
+b'dflt'
+KeyError
+(b'bar1', b'foo1')
+(b'foo1', b'bar1')
+(b'foo3', b'bar3')
+---
+(b'bar1', b'foo1')
+(b'foo1', b'bar1')
+(b'foo3', b'bar3')
+---
+(b'foo1', b'bar1')
+(b'foo3', b'bar3')
+---
+(b'foo1', b'bar1')
+---
+(b'bar1', b'foo1')
+(b'foo1', b'bar1')
+---
+(b'foo1', b'bar1')
+(b'foo3', b'bar3')
+---
+(b'foo3', b'bar3')
+(b'foo1', b'bar1')
+(b'bar1', b'foo1')
+[b'bar1', b'foo1', b'foo3']
+[b'foo1', b'bar1', b'bar3']