License Header change: Removed the LICENSE_END before beta
[scilab.git] / scilab / modules / ast / tests / unit_tests / library.dia.ref
1 //
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2014 - Scilab Enterprises - Antoine ELIAS
4 //
5 // Copyright (C) 2012 - 2016 - Scilab Enterprises
6 //
7 // This file is hereby licensed under the terms of the GNU GPL v2.0,
8 // pursuant to article 5.3.4 of the CeCILL v.2.1.
9 // This file was originally licensed under the terms of the CeCILL v2.1,
10 // and continues to be available under such terms.
11 // For more information, see the COPYING file which you should have received
12 // along with this program.
13 //
14 //
15 // <-- CLI SHELL MODE -->
16 //
17 // <-- ENGLISH IMPOSED -->
18 //
19 cd TMPDIR;
20 //create 2 lib with the same symbol ( "lib_test" for exemple )
21 //create the "lib_test" macro file in TMPDIR/lib1
22 mkdir("lib1");
23 mputl(["function ret = lib_test";"  ret= ""lib1""";"endfunction"], "lib1/lib_test.sci");
24 //generate lib ( aka "lib1lib" )
25 genlib("lib1lib","lib1",%f,%t);
26 -- Creation of [lib1lib] (Macros) --
27 genlib: Processing file: lib_test.sci
28 assert_checkequal(lib_test(), "lib1");
29 clear lib1lib lib_test;
30 //same things with TMPDIR/lib2
31 mkdir("lib2");
32 mputl(["function ret = lib_test";"  ret= ""lib2""";"endfunction"], "lib2/lib_test.sci");
33 //generate lib ( aka "lib2lib" )
34 genlib("lib2lib","lib2",%f,%t);
35 -- Creation of [lib2lib] (Macros) --
36 genlib: Processing file: lib_test.sci
37 assert_checkequal(lib_test(), "lib2");
38 clear lib2lib lib_test;
39 //now try to load lib1lib
40 lib1lib = lib("lib1");
41 //call macro
42 assert_checkequal(lib_test(), "lib1");
43 clear lib1lib lib_test;
44 //now try to load lib2lib
45 lib2lib = lib("lib2");
46 //call macro
47 assert_checkequal(lib_test(), "lib2");
48 clear lib2lib lib_test
49 //load lib1 call function, load lib2 and call function again
50 lib1lib = lib("lib1");
51 assert_checkequal(lib1lib.lib_test(), "lib1");
52 lib2lib = lib("lib2");
53 assert_checkequal(lib2lib.lib_test(), "lib2");
54 m = mgetl("SCI/modules/ast/tests/unit_tests/test_macro.sci");
55 mkdir("test");
56 mputl(m, "test/test_macro.sci");
57 genlib("testlib","test",%f,%t);
58 -- Creation of [testlib] (Macros) --
59 genlib: Processing file: test_macro.sci
60 assert_checkequal(test_macro(4), 16);
61 assert_checkequal(exists("internal_macro"), 0);
62 assert_checkequal(exists("x"), 0);
63 internal_macro = 1;x = 18;
64 assert_checkequal(test_macro(5), 20);
65 assert_checkequal(internal_macro, 1);
66 assert_checkequal(x, 18);
67 // resume library
68 mkdir("mylib");
69 mputl("function mylib(), endfunction", "mylib/mylib.sci");
70 genlib("myliblib", "mylib",%f,%t);
71 -- Creation of [myliblib] (Macros) --
72 genlib: Processing file: mylib.sci
73 function resumeLib()
74     l=lib("mylib");
75     l=resume(l);
76 endfunction
77 resumeLib();
78 resumeLib();