comparison assertSize.m @ 1197:433c89bf19e0 feature/rv

Merge with default
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Wed, 07 Aug 2019 15:23:42 +0200
parents a72038b1f709
children
comparison
equal deleted inserted replaced
1196:f6c571d8f22f 1197:433c89bf19e0
1 % Assert that array A has the size s. 1 % Assert that array A has the size s.
2 function assertSize(A,varargin) 2 function assertSize(A,varargin)
3 if length(varargin) == 1 3 if length(varargin) == 1
4 s = varargin{1}; 4 s = varargin{1};
5 errmsg = sprintf('Expected %s to have size %s, got: %s',inputname(1), toString(s), toString(size(A))); 5 assert(length(size(A)) == length(s), sprintf('Expected ''%s'' to have dimension %d, got %d', inputname(1), length(s), length(size(A))));
6 assert(all(size(A) == s), errmsg); 6 assert(all(size(A) == s), sprintf('Expected ''%s'' to have size %s, got: %s',inputname(1), toString(s), toString(size(A))));
7 elseif length(varargin) == 2 7 elseif length(varargin) == 2
8 dim = varargin{1}; 8 dim = varargin{1};
9 s = varargin{2}; 9 s = varargin{2};
10 10
11 errmsg = sprintf('Expected %s to have size %d along dimension %d, got: %d',inputname(1), s, dim, size(A,dim)); 11 errmsg = sprintf('Expected ''%s'' to have size %d along dimension %d, got: %d',inputname(1), s, dim, size(A,dim));
12 assert(size(A,dim) == s, errmsg); 12 assert(size(A,dim) == s, errmsg);
13 else 13 else
14 error('Expected 2 or 3 arguments to assertSize()'); 14 error('Expected 2 or 3 arguments to assertSize()');
15 end 15 end
16 end 16 end