* Bug #13441 fixed - Scilab crashed when uicontrol was called with a string for borde...
[scilab.git] / scilab / modules / graphics / tests / nonreg_tests / bug_13441.dia.ref
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2014 - Scilab Enterprises - Vladislav TRUBKIN
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 // <-- TEST WITH GRAPHIC -->
8 // <-- Non-regression test for bug 13441 -->
9 //
10 // <-- Bugzilla URL -->
11 // http://bugzilla.scilab.org/13441
12 //
13 // <-- Short Description -->
14 // Scilab crashes when giving a string for border property of the uicontrol
15 //
16 f = figure("figure_name", "FIGURE", ...
17 "dockable", "off", ...
18 "axes_size", [300,300], ...
19 "infobar_visible", "off", ...
20 "toolbar", "none", ...
21 "menubar_visible", "off", ...
22 "menubar", "none", ...
23 "default_axes", "off", ...
24 "layout", "border");
25 mainFrame = uicontrol(f, ...
26 "style", "frame", ...
27 "layout", "border");
28 font = createBorderFont("Serif", 12, "bold");
29 constraint = createConstraints("border", "left", [150,300]);
30 leftFrame = uicontrol(mainFrame, ...
31 "style", "frame", ...
32 "layout", "gridbag", ...
33 "constraints", constraint, ...
34 "tag", "leftFrame");
35 border = createBorder("titled", createBorder("etched"), "Frame title", "left", "top", font, "blue");
36 constraint = createConstraints("gridbag", [1 1 1 1], [1 0.1], "both", "left");
37 // OK test
38 // mlist
39 assert_checkequal(execstr("h = uicontrol(leftFrame," +...
40 """style"", ""frame""," +...
41 """border"", border," +...
42 """layout"", ""gridbag""," +...
43 """constraints"", constraint);", "errcatch"), 0);
44 assert_checkequal(execstr("h = uicontrol(leftFrame," +...
45 """style"", ""frame""," +...
46 """border"", border," +...
47 """layout"", ""grid""," +...
48 """constraints"", constraint);", "errcatch"), 0);
49 // []
50 assert_checkequal(execstr("h = uicontrol(leftFrame," +...
51 """style"", ""frame""," +...
52 """border"", []," +...
53 """layout"", ""grid""," +...
54 """constraints"", constraint);", "errcatch"), 0);
55 // KO test
56 lstrFromSetBorder = gettext("Wrong type for "'%s"' property: An empty matrix or a tlist expected.\n");
57 errmsgFromSetBorder = msprintf(lstrFromSetBorder, "border");
58 lstrFromUicontrol =  gettext("%s: Could not set property "'%s"'.\n");
59 errmsgFromUicontrol = msprintf(lstrFromUicontrol, "uicontrol", "border");
60 checkValues = list("border", [1, 2, 3, 4], [1 ,2; 1, 2], ...
61 [1:10], [1:10]', list(), ...
62 list(1, 2, 3), mlist(["MLIST", "Name", "Value"], ...
63 ["one","two", "three"], [1, 2, 3]));
64 for i = 1:8
65     if i < 6 then
66         assert_checkerror("h = uicontrol(leftFrame," +...
67         """style"", ""frame""," +...
68         """border"", checkValues(i)," +...
69         """layout"", ""gridbag""," +...
70         """constraints"", constraint);", errmsgFromSetBorder);
71     else
72         assert_checkerror("h = uicontrol(leftFrame," +...
73         """style"", ""frame""," +...
74         """border"", checkValues(i)," +...
75         """layout"", ""gridbag""," +...
76         """constraints"", constraint);", errmsgFromUicontrol);
77     end
78 end