@@ -45,35 +45,37 @@ def test_validate_index():
45
45
a = ones ((3 , 4 ))
46
46
47
47
# Out of bounds slices are not allowed
48
- assert_raises (IndexError , lambda : a [:4 ])
49
- assert_raises (IndexError , lambda : a [:- 4 ])
50
- assert_raises (IndexError , lambda : a [:3 :- 1 ])
51
- assert_raises (IndexError , lambda : a [:- 5 :- 1 ])
52
- assert_raises (IndexError , lambda : a [4 :])
53
- assert_raises (IndexError , lambda : a [- 4 :])
54
- assert_raises (IndexError , lambda : a [4 ::- 1 ])
55
- assert_raises (IndexError , lambda : a [- 4 ::- 1 ])
56
-
57
- assert_raises (IndexError , lambda : a [...,:5 ])
58
- assert_raises (IndexError , lambda : a [...,:- 5 ])
59
- assert_raises (IndexError , lambda : a [...,:5 :- 1 ])
60
- assert_raises (IndexError , lambda : a [...,:- 6 :- 1 ])
61
- assert_raises (IndexError , lambda : a [...,5 :])
62
- assert_raises (IndexError , lambda : a [...,- 5 :])
63
- assert_raises (IndexError , lambda : a [...,5 ::- 1 ])
64
- assert_raises (IndexError , lambda : a [...,- 5 ::- 1 ])
48
+ assert_raises (IndexError , lambda : a [:4 , 0 ])
49
+ assert_raises (IndexError , lambda : a [:- 4 , 0 ])
50
+ assert_raises (IndexError , lambda : a [:3 :- 1 ]) # XXX raises for a wrong reason
51
+ assert_raises (IndexError , lambda : a [:- 5 :- 1 , 0 ])
52
+ assert_raises (IndexError , lambda : a [4 :, 0 ])
53
+ assert_raises (IndexError , lambda : a [- 4 :, 0 ])
54
+ assert_raises (IndexError , lambda : a [4 ::- 1 , 0 ])
55
+ assert_raises (IndexError , lambda : a [- 4 ::- 1 , 0 ])
56
+
57
+ assert_raises (IndexError , lambda : a [..., :5 ])
58
+ assert_raises (IndexError , lambda : a [..., :- 5 ])
59
+ assert_raises (IndexError , lambda : a [..., :5 :- 1 ])
60
+ assert_raises (IndexError , lambda : a [..., :- 6 :- 1 ])
61
+ assert_raises (IndexError , lambda : a [..., 5 :])
62
+ assert_raises (IndexError , lambda : a [..., - 5 :])
63
+ assert_raises (IndexError , lambda : a [..., 5 ::- 1 ])
64
+ assert_raises (IndexError , lambda : a [..., - 5 ::- 1 ])
65
65
66
66
# Boolean indices cannot be part of a larger tuple index
67
- assert_raises (IndexError , lambda : a [a [:,0 ] == 1 , 0 ])
68
- assert_raises (IndexError , lambda : a [a [:,0 ] == 1 , ...])
69
- assert_raises (IndexError , lambda : a [..., a [0 ]== 1 ])
67
+ assert_raises (IndexError , lambda : a [a [:, 0 ] == 1 , 0 ])
68
+ assert_raises (IndexError , lambda : a [a [:, 0 ] == 1 , ...])
69
+ assert_raises (IndexError , lambda : a [..., a [0 ] == 1 ])
70
70
assert_raises (IndexError , lambda : a [[True , True , True ]])
71
71
assert_raises (IndexError , lambda : a [(True , True , True ),])
72
72
73
73
# Integer array indices are not allowed (except for 0-D)
74
- idx = asarray ([[0 , 1 ]])
75
- assert_raises (IndexError , lambda : a [idx ])
76
- assert_raises (IndexError , lambda : a [idx ,])
74
+ idx = asarray ([0 , 1 ])
75
+ assert_raises (IndexError , lambda : a [idx , 0 ])
76
+ assert_raises (IndexError , lambda : a [0 , idx ])
77
+
78
+ # Array-likes (lists, tuples) are not allowed as indices
77
79
assert_raises (IndexError , lambda : a [[0 , 1 ]])
78
80
assert_raises (IndexError , lambda : a [(0 , 1 ), (0 , 1 )])
79
81
assert_raises (IndexError , lambda : a [[0 , 1 ]])
@@ -87,6 +89,7 @@ def test_validate_index():
87
89
assert_raises (IndexError , lambda : a [0 ,])
88
90
assert_raises (IndexError , lambda : a [0 ])
89
91
assert_raises (IndexError , lambda : a [:])
92
+ assert_raises (IndexError , lambda : a [idx ])
90
93
91
94
def test_promoted_scalar_inherits_device ():
92
95
device1 = Device ("device1" )
0 commit comments