From 3c82d1d34b6450e73816e206fa5a5d3330a4df48 Mon Sep 17 00:00:00 2001
From: Damien George <damien.p.george@gmail.com>
Date: Mon, 15 Aug 2016 10:46:02 +1000
Subject: [PATCH] tests/basics: Add more tuple tests to improve coverage
 testing.

---
 tests/basics/builtin_hash.py |  1 +
 tests/basics/tuple1.py       | 15 +++++++++++++++
 tests/basics/tuple_mult.py   |  6 ++++++
 3 files changed, 22 insertions(+)

diff --git a/tests/basics/builtin_hash.py b/tests/basics/builtin_hash.py
index c9731a3b5..ffea08e57 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 53eac2a30..2993391d5 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 0f52bce44..b128b2968 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')
-- 
GitLab