File tree Expand file tree Collapse file tree 2 files changed +63
-48
lines changed Expand file tree Collapse file tree 2 files changed +63
-48
lines changed Original file line number Diff line number Diff line change 54
54
m [2 ] = 6
55
55
print (a )
56
56
57
- # test slice assignment between memoryviews
58
- b1 = bytearray (b'1234' )
59
- b2 = bytearray (b'5678' )
60
- b3 = bytearray (b'5678' )
61
- m1 = memoryview (b1 )
62
- m2 = memoryview (b2 )
63
- m3 = memoryview (b3 )
64
- m2 [1 :3 ] = m1 [0 :2 ]
65
- print (b2 )
66
- b3 [1 :3 ] = m1 [0 :2 ]
67
- print (b3 )
68
- m1 [2 :4 ] = b3 [1 :3 ]
69
- print (b1 )
70
-
71
- try :
72
- m2 [1 :3 ] = b1 [0 :4 ]
73
- except ValueError :
74
- print ("ValueError" )
75
-
76
- try :
77
- m2 [1 :3 ] = m1 [0 :4 ]
78
- except ValueError :
79
- print ("ValueError" )
80
-
81
- try :
82
- m2 [0 :4 ] = m1 [1 :3 ]
83
- except ValueError :
84
- print ("ValueError" )
85
-
86
- # test memoryview of arrays with items sized larger than 1
87
- a1 = array .array ('i' , [0 ]* 5 )
88
- m4 = memoryview (a1 )
89
- a2 = array .array ('i' , [3 ]* 5 )
90
- m5 = memoryview (a2 )
91
- m4 [1 :3 ] = m5 [1 :3 ]
92
- print (a1 )
93
-
94
- try :
95
- m4 [1 :3 ] = m2 [1 :3 ]
96
- except ValueError :
97
- print ("ValueError" )
98
-
99
- # invalid assignment on RHS
100
- try :
101
- memoryview (array .array ('i' ))[0 :2 ] = b'1234'
102
- except ValueError :
103
- print ('ValueError' )
104
-
105
57
# invalid attribute
106
58
try :
107
59
memoryview (b'a' ).noexist
Original file line number Diff line number Diff line change
1
+ # test slice assignment to memoryview
2
+
3
+ try :
4
+ memoryview (bytearray (1 ))[:] = memoryview (bytearray (1 ))
5
+ except (NameError , TypeError ):
6
+ print ("SKIP" )
7
+ raise SystemExit
8
+
9
+ try :
10
+ import uarray as array
11
+ except ImportError :
12
+ try :
13
+ import array
14
+ except ImportError :
15
+ print ("SKIP" )
16
+ raise SystemExit
17
+
18
+ # test slice assignment between memoryviews
19
+ b1 = bytearray (b'1234' )
20
+ b2 = bytearray (b'5678' )
21
+ b3 = bytearray (b'5678' )
22
+ m1 = memoryview (b1 )
23
+ m2 = memoryview (b2 )
24
+ m3 = memoryview (b3 )
25
+ m2 [1 :3 ] = m1 [0 :2 ]
26
+ print (b2 )
27
+ b3 [1 :3 ] = m1 [0 :2 ]
28
+ print (b3 )
29
+ m1 [2 :4 ] = b3 [1 :3 ]
30
+ print (b1 )
31
+
32
+ # invalid slice assignments
33
+ try :
34
+ m2 [1 :3 ] = b1 [0 :4 ]
35
+ except ValueError :
36
+ print ("ValueError" )
37
+ try :
38
+ m2 [1 :3 ] = m1 [0 :4 ]
39
+ except ValueError :
40
+ print ("ValueError" )
41
+ try :
42
+ m2 [0 :4 ] = m1 [1 :3 ]
43
+ except ValueError :
44
+ print ("ValueError" )
45
+
46
+ # test memoryview of arrays with items sized larger than 1
47
+ a1 = array .array ('i' , [0 ]* 5 )
48
+ m4 = memoryview (a1 )
49
+ a2 = array .array ('i' , [3 ]* 5 )
50
+ m5 = memoryview (a2 )
51
+ m4 [1 :3 ] = m5 [1 :3 ]
52
+ print (a1 )
53
+
54
+ try :
55
+ m4 [1 :3 ] = m2 [1 :3 ]
56
+ except ValueError :
57
+ print ("ValueError" )
58
+
59
+ # invalid assignment on RHS
60
+ try :
61
+ memoryview (array .array ('i' ))[0 :2 ] = b'1234'
62
+ except ValueError :
63
+ print ('ValueError' )
You can’t perform that action at this time.
0 commit comments