diff --git a/tests/basics/builtin_hash.py b/tests/basics/builtin_hash.py
index c9731a3b598cd4e8f9f9315c8d08f0178d899f92..ffea08e575ea7395691e6257ad6433553b9ac1f8 100644
--- a/tests/basics/builtin_hash.py
+++ b/tests/basics/builtin_hash.py
@@ -3,6 +3,7 @@
 print(hash(False))
 print(hash(True))
 print({():1}) # hash tuple
+print({(1,):1}) # hash non-empty tuple
 print({1 << 66:1}) # hash big int
 print({-(1 << 66):2}) # hash negative big int
 print(hash in {hash:1}) # hash function
diff --git a/tests/basics/tuple1.py b/tests/basics/tuple1.py
index 53eac2a3067d026335a0728a77a42cdc4a25ffcb..2993391d5397f1e3ab9c2f05c327cc25cd6f4bdf 100644
--- a/tests/basics/tuple1.py
+++ b/tests/basics/tuple1.py
@@ -16,3 +16,18 @@ print(x[:-1])
 print(x[2:3])
 
 print(x + (10, 100, 10000))
+
+# construction of tuple from large iterator (tests implementation detail of uPy)
+print(tuple(range(20)))
+
+# unsupported unary operation
+try:
+    +()
+except TypeError:
+    print('TypeError')
+
+# unsupported type on RHS of add
+try:
+    () + None
+except TypeError:
+    print('TypeError')
diff --git a/tests/basics/tuple_mult.py b/tests/basics/tuple_mult.py
index 0f52bce44ebd09e99cb5049d1c8fabe762c52971..b128b2968951edf2d2e4cf1de81d5148d5e476d0 100644
--- a/tests/basics/tuple_mult.py
+++ b/tests/basics/tuple_mult.py
@@ -10,3 +10,9 @@ for i in (-4, -2, 0, 2, 4):
 a = (1, 2, 3)
 c = a * 3
 print(a, c)
+
+# unsupported type on RHS
+try:
+    () * None
+except TypeError:
+    print('TypeError')