Mercurial > octave-nkf
diff test/colormaps.tst @ 19647:e8e3a89fa370
Fix colormap functions when N is not of class double (bug #44070)
* autumn.m, bone.m, cool.m, copper.m, cubehelix.m, gray.m, hsv.m, ocean.m,
rainbow.m, spring.m, summer.m, winter.m: cast N to double since in this
colormap functions, N is used directly used in the operations and ends up
casting colormap to something else. Note that a colormap MUST be of class
double. Also, if N is an integer class, all values in colormap end up 0
or 1. Also simplify code for input checking by declaring default on function
signature line.
* flag.m, gmap40.m, hot.m, jet.m, lines.m, pink.m, prism.m, white.m: simplify
input check like the other colormap functions.
* test/colormaps.tst: add new test file to test all colormaps at once.
* test/Makefile.am: add new test file to build system.
used to create the colormap and if less
author | Carnë Draug <carandraug@octave.org> |
---|---|
date | Fri, 23 Jan 2015 15:37:56 +0000 |
parents | |
children | 2099e00b1833 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/colormaps.tst Fri Jan 23 15:37:56 2015 +0000 @@ -0,0 +1,37 @@ +## Copyright (C) 2015 Carnë Draug +## +## This file is part of Octave. +## +## Octave is free software; you can redistribute it and/or modify it +## under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 3 of the License, or (at +## your option) any later version. +## +## Octave is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +## General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with Octave; see the file COPYING. If not, see +## <http://www.gnu.org/licenses/>. + +%!test +%! all_colormaps = colormap ("list"); +%! +%! assert (numel (all_colormaps) > 0) +%! +%! for i = 1:numel (all_colormaps) +%! f = str2func (all_colormaps{i}); +%! +%! assert (iscolormap (f (1))) +%! assert (iscolormap (f (12))) +%! assert (iscolormap (f (200))) +%! +%! ## bug #44070 +%! assert (class (f (uint8 (12))), "double") +%! assert (iscolormap (f (uint8 (12)))) +%! +%! assert (f (0), zeros (0, 3)) +%! endfor +