diff assertSize.m @ 988:a72038b1f709

Fix bug in assertSize where dimensions didn't have to match
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 08 Jan 2019 15:00:12 +0100
parents dec0447cbf2c
children
line wrap: on
line diff
--- a/assertSize.m	Tue Jan 08 14:59:43 2019 +0100
+++ b/assertSize.m	Tue Jan 08 15:00:12 2019 +0100
@@ -2,13 +2,13 @@
 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);
+        assert(length(size(A)) == length(s), sprintf('Expected ''%s'' to have dimension %d, got %d', inputname(1), length(s), length(size(A))));
+        assert(all(size(A) == s), sprintf('Expected ''%s'' to have size %s, got: %s',inputname(1), toString(s), toString(size(A))));
     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));
+        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()');