changeset 16779:59b08464d971

accumdim.m: Add %!tests for function. * scripts/general/accumdim.m: Add %!tests for function.
author Rik <rik@octave.org>
date Wed, 19 Jun 2013 14:01:14 -0700
parents 65546674d336
children e205f5ea826a
files scripts/general/accumdim.m
diffstat 1 files changed, 14 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/general/accumdim.m
+++ b/scripts/general/accumdim.m
@@ -149,8 +149,7 @@
 endfunction
 
 
-%%test accumdim vs. accumarray
-
+%% Test accumdim vs. accumarray
 %!shared a
 %! a = rand (5, 5, 5);
 
@@ -159,3 +158,16 @@
 %!assert (accumdim ([2;3;2;1;2], a, 3, 3, @min)(1,5,:), accumarray ([2;3;2;1;2], a(1,5,:), [1,1,3], @min))
 %!assert (accumdim ([1;3;2;2;1], a, 2, 3, @median)(4,:,5), accumarray ([1;3;2;2;1], a(4,:,5), [1,3], @median))
 
+%% Test fillval
+%!assert (accumdim ([1;3;1;3;3], a)(2,:,:), zeros (1,5,5))
+%!assert (accumdim ([1;3;1;3;3], a, 1, 4)([2 4],:,:), zeros (2,5,5))
+%!assert (accumdim ([1;3;1;3;3], a, 1, 4, [], pi)([2 4],:,:), pi (2,5,5))
+
+%% Test input validation
+%!error accumdim (1)
+%!error accumdim (1,2,3,4,5,6,7)
+%!error <SUBS must be a subscript vector> accumdim (ones (2,2), ones (2,2))
+%!error <indices must be positive integers> accumdim ([-1 1], ones (2,2))
+%!error <N index out of range> accumdim ([1 2], ones (2,2), 1, 1)
+%!error <dimension mismatch> accumdim ([1], ones (2,2))
+