BadVPN – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 process main {
2 value({"A", {"B", "C"}, {{"D"}, "E"}}) v;
3 val_equal(v, {"A", {"B", "C"}, {{"D"}, "E"}}) a;
4 assert(a);
5  
6 v->get("1") w;
7 val_equal(w, {"B", "C"}) a;
8 assert(a);
9  
10 w->delete();
11 val_equal(v, {"A", {{"D"}, "E"}}) a;
12 assert(a);
13  
14 v->getpath({"1", "1"}) f;
15 val_equal(f, "E") a;
16 assert(a);
17  
18 value(["hello":{"Hello", "Good evening!"}, "goodbye":{"Bye", "See you"}]) v;
19 val_equal(v, ["hello":{"Hello", "Good evening!"}, "goodbye":{"Bye", "See you"}]) a;
20 assert(a);
21  
22 val_equal(v.keys, {"goodbye", "hello"}) a;
23 assert(a);
24  
25 v->get("hello") h;
26 val_equal(h, {"Hello", "Good evening!"}) a;
27 assert(a);
28  
29 v->get("goodbye") g;
30 val_equal(g, {"Bye", "See you"}) a;
31 assert(a);
32  
33 g->delete();
34 val_equal(v, ["hello":{"Hello", "Good evening!"}]) a;
35 assert(a);
36  
37 h->delete();
38 val_equal(v, []);
39 assert(a);
40  
41 v->delete();
42 strcmp(v.exists, "false") a;
43 assert(a);
44  
45 value({"D", "F", "H"}) v;
46 v->insert("0", "A") a; # ADFH
47 v->insert("1", "B") b; # ABDFH
48 v->insert("5", "I") i; # ABDFHI
49 val_equal(v, {"A", "B", "D", "F", "H", "I"}) a;
50 assert(a);
51  
52 value(["k1":"v1", "k2":"v2", "k3":"v3"]) v;
53 v->insert("k0", "v0") v0; # k0=v0 k1=v1 k2=v2 k3=v3
54 v->insert("k0", "V0") V0; # k0=V0 k1=v1 k2=v2 k3=v3
55 val_equal(v0, "v0") a;
56 assert(a);
57 val_equal(V0, "V0") a;
58 assert(a);
59  
60 value({"D", "F", "H"}) v;
61 v->remove("0"); # FH
62 v->remove("1"); # F
63 val_equal(v, {"F"}) a;
64 assert(a);
65  
66 value(["k1":"v1", "k2":"v2", "k3":"v3"]) v;
67 v->remove("k1");
68 v->remove("k3");
69 val_equal(v, ["k2":"v2"]) a;
70 assert(a);
71  
72 value(["k1":"v1", "k2":"v2", "k3":"v3"]) v;
73 v->try_get("k1") v1;
74 v->try_get("k7") v7;
75 val_equal(v1.exists, "true") a;
76 assert(a);
77 val_equal(v7.exists, "false") a;
78 assert(a);
79  
80 value(["k1":"v1", "k2":"v2", "k3":"v3"]) v;
81 imperative("<none>", {}, "check1", {}, "10000");
82 v->insert_undo("k1", "V1") V1;
83 strcmp(V1, "V1") a;
84 assert(a);
85 v->insert_undo("k4", "V4");
86 v->remove("k2");
87 val_equal(v, ["k1":"V1", "k3":"v3", "k4":"V4"]) a;
88 assert(a);
89  
90 value({"a", "b", "c"}) v;
91 v->replace("0", "A");
92 v->replace("1", "B");
93 v->replace("2", "C");
94 v->replace("3", "D");
95 val_equal(v, {"A", "B", "C", "D"}) a;
96 assert(a);
97  
98 value({"a", "b", "c"}) v;
99 imperative("<none>", {}, "check2", {}, "10000");
100 v->replace_undo("0", "A");
101 v->replace_undo("1", "B");
102 v->replace_undo("2", "C");
103 v->replace_undo("3", "D");
104 val_equal(v, {"A", "B", "C", "D"}) a;
105 assert(a);
106  
107 value("A") v;
108 v->reset("B");
109 val_equal(v, "B") a;
110 assert(a);
111  
112 value({"a", "c"}) v;
113 v->insert_undo("1", "b") vb;
114 val_equal(v, {"a", "b", "c"}) a;
115 assert(a);
116 val_equal(vb, "b") a;
117 assert(a);
118 vb->reset("B");
119 val_equal(v, {"a", "c"}) a;
120 assert(a);
121 val_equal(vb, "B") a;
122 assert(a);
123  
124 value({"a", "b", "c"}) v;
125 v->get("1") vb;
126 vb->replace_this("B") vB;
127 val_equal(vb, "b") a;
128 assert(a);
129 val_equal(vB, "B") a;
130 assert(a);
131 v->get("1") vB2;
132 val_equal(vB2, "B") a;
133 assert(a);
134  
135 value(["a":"va", "b":"vb", "c":"vc"]) v;
136 v->get("b") vb;
137 vb->replace_this("vB") vB;
138 val_equal(vB, "vB") a;
139 assert(a);
140 val_equal(vb, "vb") a;
141 assert(a);
142 v->get("b") vB2;
143 val_equal(vB2, "vB") a;
144 assert(a);
145  
146 value({"a", "b", "c"}) v;
147 v->get("1") vb;
148 imperative("<none>", {}, "check3", {}, "10000");
149 vb->replace_this_undo("B") vB;
150 val_equal(vb, "b") a;
151 assert(a);
152 val_equal(vB, "B") a;
153 assert(a);
154 v->get("1") vB2;
155 val_equal(vB2, "B") a;
156 assert(a);
157  
158 value(["a":"va", "b":"vb", "c":"vc"]) v;
159 v->get("b") vb;
160 imperative("<none>", {}, "check4", {}, "10000");
161 vb->replace_this_undo("vB") vB;
162 val_equal(vB, "vB") a;
163 assert(a);
164 val_equal(vb, "vb") a;
165 assert(a);
166 v->get("b") vB2;
167 val_equal(vB2, "vB") a;
168 assert(a);
169  
170 value("") v;
171 v->append("ab");
172 v->append("cde");
173 v->append(v);
174 v->append("");
175 v->append("f");
176 val_equal(v, "abcdeabcdef") a;
177 assert(a);
178  
179 value({}) v;
180 v->insert("1") ins_v;
181 v->insert("2");
182 v->insert("3");
183 v->insert("4");
184 v->append("5");
185 v->append("6");
186 val_equal(v, {"1", "2", "3", "4", "5", "6"}) a;
187 assert(a);
188 val_equal(ins_v, "1") a;
189 assert(a);
190  
191 value({}) v;
192 imperative("<none>", {}, "check5", {}, "10000");
193 v->insert_undo("1");
194 v->insert_undo("2");
195 v->insert_undo("3");
196 v->insert_undo("4");
197 val_equal(v, {"1", "2", "3", "4"}) a;
198 assert(a);
199  
200 concat("hello", "world") cnc;
201 value(cnc) v;
202 val_equal(v, "helloworld") a;
203 assert(a);
204 v->substr("2") sub_v;
205 val_equal(sub_v, "lloworld") a;
206 assert(a);
207 v->append("!!");
208 val_equal(v, "helloworld!!") a;
209 assert(a);
210 v->substr("1") sub_v;
211 val_equal(sub_v, "elloworld!!") a;
212 assert(a);
213  
214 exit("0");
215 }
216  
217 template check1 {
218 val_equal(_caller.v, ["k1":"v1", "k3":"v3"]) a;
219 assert(a);
220 }
221  
222 template check2 {
223 val_equal(_caller.v, {"a", "b", "c"}) a;
224 assert(a);
225 }
226  
227 template check3 {
228 val_equal(_caller.v, {"a", "b", "c"}) a;
229 assert(a);
230 }
231  
232 template check4 {
233 val_equal(_caller.v, ["a":"va", "b":"vb", "c":"vc"]) a;
234 assert(a);
235 }
236  
237 template check5 {
238 val_equal(_caller.v, {}) a;
239 assert(a);
240 }