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 8// <-- CLI SHELL MODE --> 9ilib_verbose(0); 10 11function test_list(safe) 12 mkdir(pathconvert(TMPDIR+"/api_c/" + safe)); 13 cd(pathconvert(TMPDIR+"/api_c/" + safe)); 14 copyfile(SCI+"/modules/api_scilab/tests/unit_tests/api_c/list_test.c",pathconvert(TMPDIR+"/api_c/" + safe + "/list_test.c",%F)); 15 16 cflags = ""; 17 if safe == "unsafe" then 18 cflags = "-D__API_SCILAB_UNSAFE__"; 19 end 20 21 ilib_build("liblist" + safe,["list_test","sci_list_test", "csci6"],"list_test.c",[],"","",cflags); 22 exec("loader.sce"); 23 24 fields = ["double","string","boolean","poly","list","cell"]; 25 data = list(1, "2", %t, %s, list(1,2,3), {1,2;3,4}); 26 t = list_test(fields, data); 27 28 assert_checkequal(typeof(t), "mytlist"); 29 assert_checkequal(t.double, 1); 30 assert_checkequal(t.string, "2"); 31 assert_checkequal(t.boolean, %t); 32 assert_checkequal(t.poly, %s); 33 assert_checkequal(t.list, list(1,2,3)); 34 assert_checkequal(t.cell, {1,2;3,4}); 35 36 disp("OK"); 37endfunction 38 39test_list("safe"); 40test_list("unsafe"); 41