# HG changeset patch # User Ben Abbott # Date 1450225543 18000 # Node ID 40e1134ec9843c96f36733b3f6d06c3f4d6872b5 # Parent c640ea6a1612a107067920db81f261591d47b0d1# Parent 9fe6db1dcc4619b88e8df36518f88adb1108350f maint: Periodic merge of stable to default diff -r c640ea6a1612 -r 40e1134ec984 scripts/general/private/__isequal__.m --- a/scripts/general/private/__isequal__.m Tue Dec 15 13:35:31 2015 -0800 +++ b/scripts/general/private/__isequal__.m Tue Dec 15 19:25:43 2015 -0500 @@ -64,7 +64,7 @@ if (t) ## Test that everything has the same number of dimensions. - t = all (ndims (x) == cellfun ("ndims", varargin)); + t = all (builtin ("ndims", x) == cellfun ("ndims", varargin)); endif if (t) @@ -72,7 +72,7 @@ nd = ndims (x); k = 1; do - t = all (size (x,k) == cellfun ("size", varargin, k)); + t = all (builtin ("size", x, k) == cellfun ("size", varargin, k)); until (!t || k++ == nd); endif diff -r c640ea6a1612 -r 40e1134ec984 scripts/plot/util/__gnuplot_drawnow__.m --- a/scripts/plot/util/__gnuplot_drawnow__.m Tue Dec 15 13:35:31 2015 -0800 +++ b/scripts/plot/util/__gnuplot_drawnow__.m Tue Dec 15 19:25:43 2015 -0500 @@ -185,8 +185,8 @@ || any (strcmp (term, {"canvas", "emf", "gif", "jpeg", ... "pbm", "png", "pngcairo", "svg"})))) ## Convert to inches - gnuplot_pos = gnuplot_pos / get (0, "screenpixelsperinch"); - gnuplot_size = gnuplot_size / get (0, "screenpixelsperinch"); + gnuplot_pos = gnuplot_pos / 72; + gnuplot_size = gnuplot_size / 72; endif if (all (gnuplot_size > 0)) terminals_with_size = {"canvas", "emf", "epslatex", "fig", ... diff -r c640ea6a1612 -r 40e1134ec984 test/classes/@SizeTester/SizeTester.m --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/classes/@SizeTester/SizeTester.m Tue Dec 15 19:25:43 2015 -0500 @@ -0,0 +1,6 @@ +function x = SizeTester (desired_size) + + x = struct ("desired_size", desired_size); + x = class (x, "SizeTester"); + +endfunction diff -r c640ea6a1612 -r 40e1134ec984 test/classes/@SizeTester/numel.m --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/classes/@SizeTester/numel.m Tue Dec 15 19:25:43 2015 -0500 @@ -0,0 +1,5 @@ +function n = numel (this) + + n = prod (this.desired_size); + +endfunction diff -r c640ea6a1612 -r 40e1134ec984 test/classes/@SizeTester/size.m --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/classes/@SizeTester/size.m Tue Dec 15 19:25:43 2015 -0500 @@ -0,0 +1,5 @@ +function s = size (this) + + s = this.desired_size; + +endfunction diff -r c640ea6a1612 -r 40e1134ec984 test/classes/classes.tst --- a/test/classes/classes.tst Tue Dec 15 13:35:31 2015 -0800 +++ b/test/classes/classes.tst Tue Dec 15 19:25:43 2015 -0500 @@ -361,3 +361,49 @@ %% Trying to change to CPrecendenceTester3 > Snork %!error D = CPrecedenceTester3 (1); +############################################## +## Testing overridden size+numel method ## +## (builtin size method and similar methods ## +## use the size of the struct container) ## +############################################## + +%!shared st +%!test st = SizeTester ([1 1]); +%! assert (isequal (size (st), [1 1])) +%! assert (isequal (numel (st), 1)) +%!assert (isequal (ndims (st), 2)) +%!assert (isequal (rows (st), 1)) +%!assert (isequal (columns (st), 1)) +%!assert (isequal (st, st)) +%!assert (isscalar (st)) +%!assert (isvector (st)) + +%!test st = SizeTester ([1 2]); +%! assert (isequal (size (st), [1 2])) +%! assert (isequal (numel (st), 2)) +%!assert (isequal (ndims (st), 2)) +%!assert (isequal (rows (st), 1)) +%!xtest assert (isequal (columns (st), 2)) +%!assert (isequal (st, st)) # bug #44334 +%!xtest assert (not (isscalar (st))) # bug #44498 +%!assert (isvector (st)) + +%!test st = SizeTester ([2 3]); +%! assert (isequal (size (st), [2 3])) +%! assert (isequal (numel (st), 6)) +%!assert (isequal (ndims (st), 2)) +%!xtest assert (isequal (rows (st), 2)) +%!xtest assert (isequal (columns (st), 3)) +%!assert (isequal (st, st)) # bug #44334 +%!xtest assert (not (isscalar (st))) # bug #44498 +%!xtest assert (not (isvector (st))) # bug #44498 + +%!test st = SizeTester ([2 3 4]); +%! assert (isequal (size (st), [2 3 4])) +%! assert (isequal (numel (st), 24)) +%!xtest assert (isequal (ndims (st), 3)) +%!xtest assert (isequal (rows (st), 2)) +%!xtest assert (isequal (columns (st), 3)) +%!assert (isequal (st, st)) # bug #44334 +%!xtest assert (not (isscalar (st))) # bug #44498 +%!xtest assert (not (isvector (st))) # bug #44498