summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--tests/misc/non_compliant.py41
-rw-r--r--tests/misc/non_compliant.py.exp6
2 files changed, 47 insertions, 0 deletions
diff --git a/tests/misc/non_compliant.py b/tests/misc/non_compliant.py
new file mode 100644
index 0000000000..ee1dcf3416
--- /dev/null
+++ b/tests/misc/non_compliant.py
@@ -0,0 +1,41 @@
+# tests for things that are not implemented, or have non-compliant behaviour
+
+import array
+
+# array deletion not implemented
+try:
+ a = array.array('b', (1, 2, 3))
+ del a[1]
+except TypeError:
+ print('TypeError')
+
+# slice with step!=1 not implemented
+try:
+ a = array.array('b', (1, 2, 3))
+ print(a[3:2:2])
+except NotImplementedError:
+ print('NotImplementedError')
+
+# should raise type error
+try:
+ print(set('12') >= '1')
+except TypeError:
+ print('TypeError')
+
+# should raise type error
+try:
+ print(set('12') <= '123')
+except TypeError:
+ print('TypeError')
+
+# uPy raises TypeError, shold be ValueError
+try:
+ '%c' % b'\x01\x02'
+except (TypeError, ValueError):
+ print('TypeError, ValueError')
+
+# attributes/subscr not implemented
+try:
+ print('{a[0]}'.format(a=[1, 2]))
+except NotImplementedError:
+ print('NotImplementedError')
diff --git a/tests/misc/non_compliant.py.exp b/tests/misc/non_compliant.py.exp
new file mode 100644
index 0000000000..71a982f2bb
--- /dev/null
+++ b/tests/misc/non_compliant.py.exp
@@ -0,0 +1,6 @@
+TypeError
+NotImplementedError
+True
+True
+TypeError
+NotImplementedError