Mercurial > repos > public > sbplib
changeset 768:dec0447cbf2c feature/grids
Make assertSize more general, allow picking dimensions
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Tue, 26 Jun 2018 14:07:35 +0200 |
parents | 97f24d151a6e |
children | e958ed76e484 |
files | assertSize.m |
diffstat | 1 files changed, 14 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/assertSize.m Tue Jun 26 14:02:31 2018 +0200 +++ b/assertSize.m Tue Jun 26 14:07:35 2018 +0200 @@ -1,5 +1,16 @@ % Assert that array A has the size s. -function assertSize(A,s) - errmsg = sprintf('Expected %s to have size %s, got: %s',inputname(1), toString(s), toString(size(A))); - assert(all(size(A) == s),errmsg); +function assertSize(A,varargin) + if length(varargin) == 1 + s = varargin{1}; + errmsg = sprintf('Expected %s to have size %s, got: %s',inputname(1), toString(s), toString(size(A))); + assert(all(size(A) == s), errmsg); + elseif length(varargin) == 2 + dim = varargin{1}; + s = varargin{2}; + + errmsg = sprintf('Expected %s to have size %d along dimension %d, got: %d',inputname(1), s, dim, size(A,dim)); + assert(size(A,dim) == s, errmsg); + else + error('Expected 2 or 3 arguments to assertSize()'); + end end