diff test/test_range.m @ 6938:688ef9440022

[project @ 2007-10-01 15:59:33 by dbateman]
author dbateman
date Mon, 01 Oct 2007 16:01:53 +0000
parents
children 93c65f2a5668
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/test/test_range.m
@@ -0,0 +1,54 @@
+## Test values of range
+
+%!assert(full(1:9), [ 1 2 3 4 5 6 7 8 9 ])
+%!assert(full(1:0.4:3), [ 1.0 1.4 1.8 2.2 2.6 3.0 ])
+%!assert(full(9:1), zeros(1,0))
+%!assert(full(9:-1:1), [ 9 8 7 6 5 4 3 2 1 ])
+%!assert(full(1:-1:9), zeros(1,0))
+
+
+## Test mixing integer range with other types
+
+%!shared expect, r, z
+%! expect = [ 1 2 3 4 5 6 7 8 9
+%!            0 0 0 0 0 0 0 0 0 ];
+%! z = zeros(1,9);
+%! r = 1:9;
+
+%!assert([ r ; z                  ], expect)
+%!assert([ r ; logical(z)         ], expect)
+%!assert([ r ; sparse(z)          ], expect)
+%!assert([ r ; sparse(logical(z)) ], expect)
+
+%!assert([ r ; int8(z)            ], int8(expect))
+%!assert([ r ; int16(z)           ], int16(expect))
+%!assert([ r ; int32(z)           ], int32(expect))
+%!assert([ r ; int64(z)           ], int64(expect))
+%!assert([ r ; uint8(z)           ], uint8(expect))
+%!assert([ r ; uint16(z)          ], uint16(expect))
+%!assert([ r ; uint32(z)          ], uint32(expect))
+%!assert([ r ; uint64(z)          ], uint64(expect))
+
+
+## Test mixing non integer range with other types
+
+%!shared expect, r, z
+%! expect = [ 1.0 1.4 1.8 2.2 2.6 3.0
+%!            0   0   0   0   0   0   ];
+%! z = zeros(1,6);
+%! r = 1:0.4:3;
+
+%!assert([ r ; z                  ], expect)
+%!assert([ r ; logical(z)         ], expect)
+%!assert([ r ; sparse(z)          ], expect)
+%!assert([ r ; sparse(logical(z)) ], expect)
+
+%!assert([ r ; int8(z)            ], int8(expect))
+%!assert([ r ; int16(z)           ], int16(expect))
+%!assert([ r ; int32(z)           ], int32(expect))
+%!assert([ r ; int64(z)           ], int64(expect))
+%!assert([ r ; uint8(z)           ], uint8(expect))
+%!assert([ r ; uint16(z)          ], uint16(expect))
+%!assert([ r ; uint32(z)          ], uint32(expect))
+%!assert([ r ; uint64(z)          ], uint64(expect))
+