error(num): remaining occurrences removed from tests
[scilab.git] / scilab / modules / data_structures / tests / unit_tests / lstops.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) ????-2008 - INRIA
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 // <-- CLI SHELL MODE -->
8 funcprot(0);
9
10 //-----------------------
11 //-- extractions tests --
12 //-----------------------
13
14 l=list(1,2,-4);
15 if l(1)<>1 then pause,end
16 if l(3)<>-4 then pause,end
17 [x1,x2]=l([1 3]);
18 if x1<>l(1)|x2<>l(3) then pause,end
19 [x2,x1]=l([3 1]);
20 if x1<>l(1)|x2<>l(3) then pause,end
21 [x1,x2]=l([1;3]);
22 if x1<>l(1)|x2<>l(3) then pause,end
23 [x2,x1]=l([3;1]);
24 if x1<>l(1)|x2<>l(3) then pause,end
25 [x1,x2,x3]=l(:);
26 if x1<>l(1)|x2<>l(2)|x3<>l(3) then pause,end
27
28 //with full tlists
29 l=tlist(["t","a","b","c"],1,-2,5);
30 if l(2)<>1 then pause,end
31 if l(4)<>5 then pause,end
32 [x1,x2]=l([2 4]);
33 if x1<>l(2)|x2<>l(4) then pause,end
34 [x2,x1]=l([4 2]);
35 if x1<>l(2)|x2<>l(4) then pause,end
36 if l("a")<>1 then pause,end
37 if l("c")<>5 then pause,end
38 [x1,x2]=l(["a" "c"]);
39 if x1<>l("a")|x2<>l("c") then pause,end
40 [x2,x1]=l(["c" "a"]);
41 if x1<>l("a")|x2<>l("c") then pause,end
42 [x1,x2]=l(["a";"c"]);
43 if x1<>l("a")|x2<>l("c") then pause,end
44 [x2,x1]=l(["c";"a"]);
45 if x1<>l("a")|x2<>l("c") then pause,end
46
47 //with partial tlists (no elements formal names)
48 l=tlist("t",1,-2,5);
49 deff("[f1,f2,f3,f4,f5,f6,f7]=%t_e(i,j,f)",[
50 "nams=[''a'',''b'',''c''];"
51 "for k=1:prod(size(i))";
52 "   kf=find(i(k)==nams);";
53 "   if kf==[] then error(""%s: Invalid index.\n""),end;"
54 "   execstr(''f''+string(k)+''=j(kf+1)'');"
55 "   end;"])
56 if l(2)<>1 then pause,end
57 if l(4)<>5 then pause,end
58 [x1,x2]=l([2 4]);
59 if x1<>l(2)|x2<>l(4) then pause,end
60 [x2,x1]=l([4 2]);
61 if x1<>l(2)|x2<>l(4) then pause,end
62 if l("a")<>1 then pause,end
63 if l("c")<>5 then pause,end
64 [x1,x2]=l(["a" "c"]);
65 if x1<>l("a")|x2<>l("c") then pause,end
66 [x2,x1]=l(["c" "a"]);
67 if x1<>l("a")|x2<>l("c") then pause,end
68 [x1,x2]=l(["a";"c"]);
69 if x1<>l("a")|x2<>l("c") then pause,end
70 [x2,x1]=l(["c";"a"]);
71 if x1<>l("a")|x2<>l("c") then pause,end
72
73 // extraction inside a input argument list
74 a=list(1,2,3,4);
75 if or(list(a(1:2))<>list(1,2)) then pause,end
76 if type(list(a(1:2)))<>15 then pause,end
77 deff("[a,b]=foo(x,y)","a=x;b=y")
78 [u,v]=foo(a(1:2));if u<>a(1)|v<>a(2) then pause,end
79 deff("[a]=foo(x,y)","a=x+y")
80 if abs(foo(a(1:2)))<>3 then pause,end
81
82 //---------------------
83 //-- insertion tests --
84 //---------------------
85 l=list(2,"a",-1);
86 l(1)=[1 2];
87 if l<>list([1 2],"a",-1) then pause,end
88 l(1)=33;
89 if l<>list(33,"a",-1) then pause,end
90 l(1)=33;
91 if l<>list(33,"a",-1) then pause,end
92 l(0)=1.25;
93 if l<>list(1.25,33,"a",-1) then pause,end
94 l(5)=[1 2 3];
95 if l<>list(1.25,33,"a",-1,[1 2 3]) then pause,end
96 l(3)=null();
97 if l<>list(1.25,33,-1,[1 2 3]) then pause,end
98 l(3)=null();
99 if l<>list(1.25,33,[1 2 3]) then pause,end
100 l(4)=null();
101 if l<>list(1.25,33,[1 2 3]) then pause,end
102 l(0)=null();
103 if l<>list(1.25,33,[1 2 3]) then pause,end
104 l=tlist("t",2,"a",-1);
105 l(2)=[1 2 3];
106 if %l_n_l(l,tlist("t",[1 2 3],"a",-1)) then pause,end
107 l(2)=33;
108 if %l_n_l(l,tlist("t",33,"a",-1)) then pause,end
109 l(2)=33;
110 if %l_n_l(l,tlist("t",33,"a",-1)) then pause,end
111 l(4)=[1 2];
112 if %l_n_l(l,tlist("t",33,"a",[1,2])) then pause,end
113 l(2)=null();
114 if %l_n_l(l,tlist("t","a",[1,2])) then pause,end
115 l(1)=null();
116 if %l_n_l(l,list("a",[1,2])) then pause,end
117
118 funcprot(1);