setfield and bug_5588 tests updated because setfield function returns now variable...
[scilab.git] / scilab / modules / data_structures / tests / unit_tests / setfield.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2015 - Scilab Enterprises - Cedric Delamarre
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 // <-- CLI SHELL MODE -->
9
10 l = list(1, "string", %s);
11 l = setfield(2, "newString", l);
12 assert_checkequal(l, list(1, "newString", %s));
13 l = setfield(0, "front", l);
14 assert_checkequal(l, list("front", 1, "newString", %s));
15
16 // b must not be modified
17 a = list(2);
18 b = a;
19 a = setfield(1, 15, a);
20 assert_checkequal(a, list(15));
21 assert_checkequal(b, list(2));
22
23 // error
24 assert_checkfalse(execstr("setfield()"   ,"errcatch") == 0);
25 refMsg = msprintf(_("%s: Wrong number of input argument(s): %d expected.\n"), "setfield", 3);
26 assert_checkerror("setfield()", refMsg);
27
28 assert_checkfalse(execstr("[c,d] = setfield(1,10,a)"   ,"errcatch") == 0);
29 refMsg = msprintf(_("%s: Wrong number of output argument(s): %d expected.\n"), "setfield", 1);
30 assert_checkerror("[c,d] = setfield(1,10,a)", refMsg);