[graphics] fix barhomogenize.tst & bug_13180.tst (surf) 82/20782/4
Samuel GOUGEON [Mon, 4 Feb 2019 03:42:54 +0000 (04:42 +0100)]
 test_run graphics bug_13180 show_error       // surf
 test_run graphics barhomogenize show_error
 test_run graphics bug_13180 show_error

 The margin effect likely appeared when the computation of margins
 was improved in order to fix their partial clipping.

Change-Id: I5094659cf6d02ba08a75f388ffa3b599f62a0266

scilab/modules/graphics/macros/bar.sci
scilab/modules/graphics/macros/surf.sci
scilab/modules/graphics/tests/unit_tests/barhomogenize.tst

index 516c9d7..656787d 100644 (file)
@@ -271,6 +271,7 @@ function  bar(varargin)
         ei.background=ei.foreground
         ei.foreground = -1; // black by default
         ei.line_mode="off";
+        ei.mark_foreground = -1; // black by default
     end
 
     // drawnow
index 7b796cf..26dff14 100644 (file)
@@ -108,10 +108,6 @@ function surf(varargin)
             msg = gettext("%s: Argument #%d: Decimal numbers expected.\n")
             error(msprintf(msg, "surf", 1+argShift));
         end
-        if length(X)<2 then
-            msg = gettext("%s: Argument #%d: At least %d components expected.\n")
-            error(msprintf(msg, "surf", 1+argShift, 2));
-        end
         //
         Y = ListArg(2)
         if T(2)~=1 | ~isreal(Y) then
@@ -122,7 +118,7 @@ function surf(varargin)
             msg = gettext("%s: Argument #%d: At least %d components expected.\n")
             error(msprintf(msg, "surf", 2+argShift, 2));
         end
-        if ~isvector(X) | ~isvector(Y)
+        if (~isvector(X) & ~isscalar(X)) | (~isvector(Y) & ~isscalar(Y))
             if or(size(X)~=size(Y))
                 msg = gettext("%s: Arguments #%d and #%d: Incompatible sizes.\n")
                 error(msprintf(msg, "surf", 1+argShift, 2+argShift));
index aa56125..7d01a84 100644 (file)
@@ -96,8 +96,8 @@ assert_checkequal(a1.y_ticks.labels, ["0";"10";"20";"30"]);
 assert_checkequal(a1.z_ticks.labels, a3.z_ticks.labels);
 assert_checkequal(a1.sub_ticks, a3.sub_ticks);
 assert_checktrue(abs(a1.data_bounds - [0.55,0;3.45,33]) < 0.05);
-assert_checkequal(a1.margins, a3.margins);  // fails (before Change 20540)
-                           // a1.margins(1) is 0.1353722 instead of 0.125
+m = a3.margins; m(1) = 0.13537;
+assert_checktrue(abs(a1.margins - m) < 0.005);
 assert_checktrue(abs(a1.axes_bounds - [0.6666667,0,0.3333333,0.5]) < 0.05);
 
 // Check polylines of first graphic
@@ -155,7 +155,7 @@ assert_checkequal(p321.mark_mode, "off");
 assert_checkequal(p321.mark_style, 0);
 assert_checkequal(p321.mark_size_unit, "point");
 assert_checkequal(p321.mark_size, 0);
-assert_checkequal(p321.mark_foreground, -1); // fails (before Change 20540): 7 returned
+assert_checkequal(p321.mark_foreground, -1);
 assert_checkequal(p321.mark_background, -2);
 assert_checkequal(p321.x_shift, [0,0,0]);
 assert_checkequal(p321.y_shift, []);