@@ -136,24 +136,35 @@ function invalidFilePath(testcase)
136
136
137
137
function invalidPartialReadParams(testcase )
138
138
% Verify zarrread errors when invalid partial read
139
- % Start/Stride/Count are used
140
-
139
+ % Start/Stride/Count are used.
141
140
zpath = testcase .ArrPathReadSmall ; % a 2D array, 3x4
142
141
142
+ % Wrong number of dimensions in comparison to the array
143
143
errID = ' MATLAB:Zarr:badPartialReadDimensions' ;
144
- wrongNumberOfDimensions = [1 ,1 ,1 ];
145
- testcase .verifyError(...
146
- @()zarrread(zpath ,Start= wrongNumberOfDimensions ),...
147
- errID );
148
- testcase .verifyError(...
149
- @()zarrread(zpath ,Stride= wrongNumberOfDimensions ),...
150
- errID );
151
- testcase .verifyError(...
152
- @()zarrread(zpath ,Count= wrongNumberOfDimensions ),...
153
- errID );
154
-
155
- % TODO: negative values, wrong datatypes, out of bounds
156
-
144
+ wrongDims = [1 ,1 ,1 ];
145
+ testcase .verifyError(@()zarrread(zpath ,Start= wrongDims ),errID );
146
+ testcase .verifyError(@()zarrread(zpath ,Stride= wrongDims ),errID );
147
+ testcase .verifyError(@()zarrread(zpath ,Count= wrongDims ),errID );
148
+
149
+ % Invalid type
150
+ errID = ' MATLAB:validators:mustBeNumericOrLogical' ;
151
+ testcase .verifyError(@()zarrread(zpath ," Start" ," " ),errID );
152
+ testcase .verifyError(@()zarrread(zpath ," Stride" ," " ),errID );
153
+ testcase .verifyError(@()zarrread(zpath ," Count" ," " ),errID );
154
+
155
+ % Negative values
156
+ inpVal = [-1 1 ];
157
+ errID = ' MATLAB:validators:mustBePositive' ;
158
+ testcase .verifyError(@()zarrread(zpath ," Start" ,inpVal ),errID );
159
+ testcase .verifyError(@()zarrread(zpath ," Stride" ,inpVal ),errID );
160
+ testcase .verifyError(@()zarrread(zpath ," Count" ,inpVal ),errID );
161
+
162
+ % Input out of bounds
163
+ inpVal = [100 200 ];
164
+ errID = ' MATLAB:Python:PyException' ;
165
+ testcase .verifyError(@()zarrread(zpath ," Start" ,inpVal ),errID );
166
+ % testcase.verifyError(@()zarrread(zpath,"Stride",inpVal),errID);
167
+ testcase .verifyError(@()zarrread(zpath ," Count" ,inpVal ),errID );
157
168
end
158
169
end
159
170
end
0 commit comments