37676c0beb0adb2d1a9e7a7bba7c205f06f647ee
[scilab.git] / scilab / modules / functions / tests / unit_tests / exec.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2009 - DIGITEO - Allan CORNET
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 tab_ref = [
9 "世界您好",
10 "азеазея",
11 "ハロー・ワールド",
12 "เฮลโลเวิลด์",
13 "حريات وحقوق",
14 "תוכנית"];
15
16 str_exec = 'disp(''OK'');';
17
18 for i = 1 : size(tab_ref,'*')
19   mkdir(TMPDIR + filesep() + tab_ref(i));
20   fd = mopen(TMPDIR + filesep() + tab_ref(i) + filesep() + tab_ref(i) + '.sce','wt');
21   mputl(str_exec,fd);
22   mclose(fd);
23   exec(TMPDIR + filesep() + tab_ref(i) + filesep() + tab_ref(i) + '.sce');
24   mdelete(TMPDIR + filesep() + tab_ref(i) + filesep() + tab_ref(i) + '.sce');
25   rmdir(TMPDIR + filesep() + tab_ref(i));
26 end  
27
28 // create a script file
29 mputl('a=1;b=2',TMPDIR+'/myscript')
30 // execute it
31 exec(TMPDIR+'/myscript')
32 if isdef('a')<> %t then pause,end
33 if isdef('b')<> %t then pause,end
34 if a <> 1 then pause,end
35 if b <> 2 then pause,end
36
37
38 // create a function
39 deff('y=foo(x)','a=x+1;y=a^2');
40 clear a b
41 // call the function
42 k = foo(1);
43 if isdef('k')<> %t then pause,end
44 if isdef('a')<> %f then pause,end
45 if k <> 4 then pause,end
46
47 x=4; //create x to make it known by the script foo
48 clear k y
49 exec(foo);
50 if isdef('y')<> %t then pause,end
51 if y <> 25 then pause,end
52