summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2020-07-16 23:20:30 +1000
committerDamien George <damien@micropython.org>2020-07-21 01:05:59 +1000
commit895b1dbdda132b115bb0b5102962f4f46adb7adb (patch)
tree314ffc42008134f0df48ce264690473922beb532
parentf80b1d853599787597abe6ead9e04ef8e775818b (diff)
downloadmicropython-895b1dbdda132b115bb0b5102962f4f46adb7adb.tar.gz
micropython-895b1dbdda132b115bb0b5102962f4f46adb7adb.zip
tests/basics: Split out memoryview slice-assign tests to separate file.
Signed-off-by: Damien George <damien@micropython.org>
-rw-r--r--tests/basics/memoryview1.py48
-rw-r--r--tests/basics/memoryview_slice_assign.py63
2 files changed, 63 insertions, 48 deletions
diff --git a/tests/basics/memoryview1.py b/tests/basics/memoryview1.py
index 1bfeabdfdc..4c20c91f49 100644
--- a/tests/basics/memoryview1.py
+++ b/tests/basics/memoryview1.py
@@ -54,54 +54,6 @@ print(list(m[1:-1]))
m[2] = 6
print(a)
-# test slice assignment between memoryviews
-b1 = bytearray(b'1234')
-b2 = bytearray(b'5678')
-b3 = bytearray(b'5678')
-m1 = memoryview(b1)
-m2 = memoryview(b2)
-m3 = memoryview(b3)
-m2[1:3] = m1[0:2]
-print(b2)
-b3[1:3] = m1[0:2]
-print(b3)
-m1[2:4] = b3[1:3]
-print(b1)
-
-try:
- m2[1:3] = b1[0:4]
-except ValueError:
- print("ValueError")
-
-try:
- m2[1:3] = m1[0:4]
-except ValueError:
- print("ValueError")
-
-try:
- m2[0:4] = m1[1:3]
-except ValueError:
- print("ValueError")
-
-# test memoryview of arrays with items sized larger than 1
-a1 = array.array('i', [0]*5)
-m4 = memoryview(a1)
-a2 = array.array('i', [3]*5)
-m5 = memoryview(a2)
-m4[1:3] = m5[1:3]
-print(a1)
-
-try:
- m4[1:3] = m2[1:3]
-except ValueError:
- print("ValueError")
-
-# invalid assignment on RHS
-try:
- memoryview(array.array('i'))[0:2] = b'1234'
-except ValueError:
- print('ValueError')
-
# invalid attribute
try:
memoryview(b'a').noexist
diff --git a/tests/basics/memoryview_slice_assign.py b/tests/basics/memoryview_slice_assign.py
new file mode 100644
index 0000000000..b730dceba6
--- /dev/null
+++ b/tests/basics/memoryview_slice_assign.py
@@ -0,0 +1,63 @@
+# test slice assignment to memoryview
+
+try:
+ memoryview(bytearray(1))[:] = memoryview(bytearray(1))
+except (NameError, TypeError):
+ print("SKIP")
+ raise SystemExit
+
+try:
+ import uarray as array
+except ImportError:
+ try:
+ import array
+ except ImportError:
+ print("SKIP")
+ raise SystemExit
+
+# test slice assignment between memoryviews
+b1 = bytearray(b'1234')
+b2 = bytearray(b'5678')
+b3 = bytearray(b'5678')
+m1 = memoryview(b1)
+m2 = memoryview(b2)
+m3 = memoryview(b3)
+m2[1:3] = m1[0:2]
+print(b2)
+b3[1:3] = m1[0:2]
+print(b3)
+m1[2:4] = b3[1:3]
+print(b1)
+
+# invalid slice assignments
+try:
+ m2[1:3] = b1[0:4]
+except ValueError:
+ print("ValueError")
+try:
+ m2[1:3] = m1[0:4]
+except ValueError:
+ print("ValueError")
+try:
+ m2[0:4] = m1[1:3]
+except ValueError:
+ print("ValueError")
+
+# test memoryview of arrays with items sized larger than 1
+a1 = array.array('i', [0]*5)
+m4 = memoryview(a1)
+a2 = array.array('i', [3]*5)
+m5 = memoryview(a2)
+m4[1:3] = m5[1:3]
+print(a1)
+
+try:
+ m4[1:3] = m2[1:3]
+except ValueError:
+ print("ValueError")
+
+# invalid assignment on RHS
+try:
+ memoryview(array.array('i'))[0:2] = b'1234'
+except ValueError:
+ print('ValueError')