eb8bb100266bcaa38b06321b5f9a8460f8c4cef9
[scilab.git] / scilab / modules / dynamic_link / tests / nonreg_tests / bug_3639.dia.ref
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2008-2011 - DIGITEO - Allan CORNET
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 //
8 // <-- CLI SHELL MODE -->
9 //
10 // <-- Non-regression test for bug 3639 -->
11 //
12 // <-- Bugzilla URL -->
13 // http://bugzilla.scilab.org/show_bug.cgi?id=3639
14 //
15 // <-- Short Description -->
16 // link without parameters can crash
17 ilib_verbose(0);
18 currentpath = pwd();
19 cd TMPDIR;
20 cd ../;
21 OS_TMP_DIR = pwd();
22 TEST_NAME = 'bug_3639_1';
23 mkdir(OS_TMP_DIR, TEST_NAME);
24 TEST_DIR_1 = OS_TMP_DIR + filesep() + TEST_NAME;
25 copyfile(SCI+'/modules/dynamic_link/tests/nonreg_tests/bug_3639.c' , TEST_DIR_1 + filesep() + 'bug_3639.c');
26 chdir(TEST_DIR_1);
27 files = ['bug_3639.c'];
28 ilib_build('libc_fun1', ['c_sum1','c_intsum'; 'c_sub1', 'c_intsub'], files, []);
29 // load the shared library 
30 info_link = link();
31 assert_checkequal(info_link, []);
32 exec loader.sce;
33 TEST_NAME = 'bug_3639_2';
34 mkdir(OS_TMP_DIR, TEST_NAME);
35 TEST_DIR_2 = OS_TMP_DIR + filesep() + TEST_NAME;
36 copyfile(SCI+'/modules/dynamic_link/tests/nonreg_tests/bug_3639.c' , TEST_DIR_2 + filesep() + 'bug_3639.c');
37 chdir(TEST_DIR_2);
38 ilib_build('libc_fun2', ['c_sum2', 'c_intsum'; 'c_sub2','c_intsub'], files, []);
39 info_link = link();
40 assert_checkequal(info_link, 'libc_fun1');
41 exec loader.sce;
42 info_link = link();
43 assert_checkequal(info_link, ['libc_fun2','libc_fun1']);
44 // cleaning
45 chdir(currentpath);
46 // ulink() all libraries
47 ulink();
48 clearfun('c_sum1');
49 clearfun('c_sub1');
50 clearfun('c_sum2');
51 clearfun('c_sub2');
52 //remove TMP_DIR
53 rmdir(TEST_DIR_1,'s');
54 rmdir(TEST_DIR_2,'s');
55 // =============================================================================