New C API for Scilab gateways (once again ...)
[scilab.git] / scilab / modules / api_scilab / tests / unit_tests / api_c / list_test.dia.ref
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2015 - Scilab Enterprises - Antoine ELIAS
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 // <-- CLI SHELL MODE -->
8 ilib_verbose(0);
9 function test_list(safe)
10     mkdir(pathconvert(TMPDIR+"/api_c/" + safe));
11     cd(pathconvert(TMPDIR+"/api_c/" + safe));
12     copyfile(SCI+"/modules/api_scilab/tests/unit_tests/api_c/list_test.c",pathconvert(TMPDIR+"/api_c/" + safe + "/list_test.c",%F));
13     cflags = "";
14     if safe == "unsafe" then
15         cflags = "-D__API_SCILAB_UNSAFE__";
16     end
17     ilib_build("liblist" + safe,["list_test","sci_list_test", "csci6"],"list_test.c",[],"","",cflags);
18     exec("loader.sce");
19     fields = ["double","string","boolean","poly","list","cell"];
20     data = list(1, "2", %t, %s, list(1,2,3), {1,2;3,4});
21     t = list_test(fields, data);
22     assert_checkequal(typeof(t), "mytlist");
23     assert_checkequal(t.double, 1);
24     assert_checkequal(t.string, "2");
25     assert_checkequal(t.boolean, %t);
26     assert_checkequal(t.poly, %s);
27     assert_checkequal(t.list, list(1,2,3));
28     assert_checkequal(t.cell, {1,2;3,4});
29     disp("OK");
30 endfunction
31 test_list("safe");
32  OK
33 test_list("unsafe");
34  OK