Mercurial > hg > octave-nkf
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)) +