1 /* testmultimap.c generated by valac 0.46.6, the Vala compiler
2 * generated from testmultimap.vala, do not modify */
3
4 /* testmultimap.vala
5 *
6 * Copyright (C) 2008 Jürg Billeter
7 * Copyright (C) 2009 Didier Villevalois, Julien Peeters
8 *
9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Lesser General Public
11 * License as published by the Free Software Foundation; either
12 * version 2.1 of the License, or (at your option) any later version.
13
14 * This library is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * Lesser General Public License for more details.
18
19 * You should have received a copy of the GNU Lesser General Public
20 * License along with this library; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22 *
23 * Author:
24 * Jürg Billeter <j@bitron.ch>
25 * Didier 'Ptitjes' Villevalois <ptitjes@free.fr>
26 * Julien Peeters <contact@julienpeeters.fr>
27 */
28
29 #include <glib-object.h>
30 #include <gee.h>
31 #include <stdlib.h>
32 #include <string.h>
33 #include <glib.h>
34
35 #define GEE_TYPE_TEST_CASE (gee_test_case_get_type ())
36 #define GEE_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TEST_CASE, GeeTestCase))
37 #define GEE_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TEST_CASE, GeeTestCaseClass))
38 #define GEE_IS_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TEST_CASE))
39 #define GEE_IS_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TEST_CASE))
40 #define GEE_TEST_CASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TEST_CASE, GeeTestCaseClass))
41
42 typedef struct _GeeTestCase GeeTestCase;
43 typedef struct _GeeTestCaseClass GeeTestCaseClass;
44 typedef struct _GeeTestCasePrivate GeeTestCasePrivate;
45
46 #define TYPE_MULTI_MAP_TESTS (multi_map_tests_get_type ())
47 #define MULTI_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MULTI_MAP_TESTS, MultiMapTests))
48 #define MULTI_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MULTI_MAP_TESTS, MultiMapTestsClass))
49 #define IS_MULTI_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MULTI_MAP_TESTS))
50 #define IS_MULTI_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MULTI_MAP_TESTS))
51 #define MULTI_MAP_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MULTI_MAP_TESTS, MultiMapTestsClass))
52
53 typedef struct _MultiMapTests MultiMapTests;
54 typedef struct _MultiMapTestsClass MultiMapTestsClass;
55 typedef struct _MultiMapTestsPrivate MultiMapTestsPrivate;
56 enum {
57 MULTI_MAP_TESTS_0_PROPERTY,
58 MULTI_MAP_TESTS_NUM_PROPERTIES
59 };
60 static GParamSpec* multi_map_tests_properties[MULTI_MAP_TESTS_NUM_PROPERTIES];
61 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
62 typedef void (*GeeTestCaseTestMethod) (gpointer user_data);
63 #define _g_free0(var) (var = (g_free (var), NULL))
64 #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
65 #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
66 #define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
67 #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
68
69 struct _GeeTestCase {
70 GObject parent_instance;
71 GeeTestCasePrivate * priv;
72 };
73
74 struct _GeeTestCaseClass {
75 GObjectClass parent_class;
76 void (*set_up) (GeeTestCase* self);
77 void (*tear_down) (GeeTestCase* self);
78 };
79
80 struct _MultiMapTests {
81 GeeTestCase parent_instance;
82 MultiMapTestsPrivate * priv;
83 GeeMultiMap* test_multi_map;
84 };
85
86 struct _MultiMapTestsClass {
87 GeeTestCaseClass parent_class;
88 };
89
90 static gpointer multi_map_tests_parent_class = NULL;
91
92 GType gee_test_case_get_type (void) G_GNUC_CONST;
93 G_DEFINE_AUTOPTR_CLEANUP_FUNC (GeeTestCase, g_object_unref)
94 GType multi_map_tests_get_type (void) G_GNUC_CONST;
95 G_DEFINE_AUTOPTR_CLEANUP_FUNC (MultiMapTests, g_object_unref)
96 MultiMapTests* multi_map_tests_construct (GType object_type,
97 const gchar* name);
98 GeeTestCase* gee_test_case_construct (GType object_type,
99 const gchar* name);
100 void gee_test_case_add_test (GeeTestCase* self,
101 const gchar* name,
102 GeeTestCaseTestMethod test,
103 gpointer test_target,
104 GDestroyNotify test_target_destroy_notify);
105 void multi_map_tests_test_type_correctness (MultiMapTests* self);
106 static void _multi_map_tests_test_type_correctness_gee_test_case_test_method (gpointer self);
107 static void multi_map_tests_test_size (MultiMapTests* self);
108 static void _multi_map_tests_test_size_gee_test_case_test_method (gpointer self);
109 static void multi_map_tests_test_getting_setting (MultiMapTests* self);
110 static void _multi_map_tests_test_getting_setting_gee_test_case_test_method (gpointer self);
111 static void multi_map_tests_test_keys_all_keys_values (MultiMapTests* self);
112 static void _multi_map_tests_test_keys_all_keys_values_gee_test_case_test_method (gpointer self);
113 static void multi_map_tests_finalize (GObject * obj);
114
115 static void
_multi_map_tests_test_type_correctness_gee_test_case_test_method(gpointer self)116 _multi_map_tests_test_type_correctness_gee_test_case_test_method (gpointer self)
117 {
118 multi_map_tests_test_type_correctness ((MultiMapTests*) self);
119 }
120
121 static void
_multi_map_tests_test_size_gee_test_case_test_method(gpointer self)122 _multi_map_tests_test_size_gee_test_case_test_method (gpointer self)
123 {
124 multi_map_tests_test_size ((MultiMapTests*) self);
125 }
126
127 static void
_multi_map_tests_test_getting_setting_gee_test_case_test_method(gpointer self)128 _multi_map_tests_test_getting_setting_gee_test_case_test_method (gpointer self)
129 {
130 multi_map_tests_test_getting_setting ((MultiMapTests*) self);
131 }
132
133 static void
_multi_map_tests_test_keys_all_keys_values_gee_test_case_test_method(gpointer self)134 _multi_map_tests_test_keys_all_keys_values_gee_test_case_test_method (gpointer self)
135 {
136 multi_map_tests_test_keys_all_keys_values ((MultiMapTests*) self);
137 }
138
139 MultiMapTests*
multi_map_tests_construct(GType object_type,const gchar * name)140 multi_map_tests_construct (GType object_type,
141 const gchar* name)
142 {
143 MultiMapTests * self = NULL;
144 g_return_val_if_fail (name != NULL, NULL);
145 self = (MultiMapTests*) gee_test_case_construct (object_type, name);
146 gee_test_case_add_test ((GeeTestCase*) self, "[MultiMap] type correctness", _multi_map_tests_test_type_correctness_gee_test_case_test_method, g_object_ref (self), g_object_unref);
147 gee_test_case_add_test ((GeeTestCase*) self, "[MultiMap] size", _multi_map_tests_test_size_gee_test_case_test_method, g_object_ref (self), g_object_unref);
148 gee_test_case_add_test ((GeeTestCase*) self, "[MultiMap] getting and setting", _multi_map_tests_test_getting_setting_gee_test_case_test_method, g_object_ref (self), g_object_unref);
149 gee_test_case_add_test ((GeeTestCase*) self, "[MultiMap] keys, all keys and values", _multi_map_tests_test_keys_all_keys_values_gee_test_case_test_method, g_object_ref (self), g_object_unref);
150 return self;
151 }
152
153 void
multi_map_tests_test_type_correctness(MultiMapTests * self)154 multi_map_tests_test_type_correctness (MultiMapTests* self)
155 {
156 GeeMultiMap* _tmp0_;
157 GeeMultiMap* _tmp1_;
158 GType _tmp2_;
159 GType _tmp3_;
160 GeeMultiMap* _tmp4_;
161 GType _tmp5_;
162 GType _tmp6_;
163 g_return_if_fail (self != NULL);
164 _tmp0_ = self->test_multi_map;
165 _vala_assert (_tmp0_ != NULL, "test_multi_map != null");
166 _tmp1_ = self->test_multi_map;
167 _tmp2_ = gee_multi_map_get_key_type (_tmp1_);
168 _tmp3_ = _tmp2_;
169 _vala_assert (_tmp3_ == G_TYPE_STRING, "test_multi_map.key_type == typeof (string)");
170 _tmp4_ = self->test_multi_map;
171 _tmp5_ = gee_multi_map_get_value_type (_tmp4_);
172 _tmp6_ = _tmp5_;
173 _vala_assert (_tmp6_ == G_TYPE_STRING, "test_multi_map.value_type == typeof (string)");
174 }
175
176 static void
multi_map_tests_test_size(MultiMapTests * self)177 multi_map_tests_test_size (MultiMapTests* self)
178 {
179 GeeMultiMap* _tmp0_;
180 GeeMultiMap* _tmp1_;
181 gint _tmp2_;
182 gint _tmp3_;
183 GeeMultiMap* _tmp4_;
184 GeeMultiMap* _tmp5_;
185 gint _tmp6_;
186 gint _tmp7_;
187 GeeMultiMap* _tmp8_;
188 GeeMultiMap* _tmp9_;
189 gint _tmp10_;
190 gint _tmp11_;
191 GeeMultiMap* _tmp12_;
192 GeeMultiMap* _tmp13_;
193 gint _tmp14_;
194 gint _tmp15_;
195 GeeMultiMap* _tmp16_;
196 GeeMultiMap* _tmp17_;
197 GeeMultiMap* _tmp18_;
198 gint _tmp19_;
199 gint _tmp20_;
200 GeeMultiMap* _tmp21_;
201 GeeMultiMap* _tmp22_;
202 gint _tmp23_;
203 gint _tmp24_;
204 GeeMultiMap* _tmp25_;
205 GeeMultiMap* _tmp26_;
206 gint _tmp27_;
207 gint _tmp28_;
208 g_return_if_fail (self != NULL);
209 _tmp0_ = self->test_multi_map;
210 _vala_assert (_tmp0_ != NULL, "test_multi_map != null");
211 _tmp1_ = self->test_multi_map;
212 _tmp2_ = gee_multi_map_get_size (_tmp1_);
213 _tmp3_ = _tmp2_;
214 _vala_assert (_tmp3_ == 0, "test_multi_map.size == 0");
215 _tmp4_ = self->test_multi_map;
216 gee_multi_map_set (_tmp4_, "0", "0");
217 _tmp5_ = self->test_multi_map;
218 _tmp6_ = gee_multi_map_get_size (_tmp5_);
219 _tmp7_ = _tmp6_;
220 _vala_assert (_tmp7_ == 1, "test_multi_map.size == 1");
221 _tmp8_ = self->test_multi_map;
222 gee_multi_map_set (_tmp8_, "0", "1");
223 _tmp9_ = self->test_multi_map;
224 _tmp10_ = gee_multi_map_get_size (_tmp9_);
225 _tmp11_ = _tmp10_;
226 _vala_assert (_tmp11_ == 2, "test_multi_map.size == 2");
227 _tmp12_ = self->test_multi_map;
228 gee_multi_map_remove (_tmp12_, "0", "1");
229 _tmp13_ = self->test_multi_map;
230 _tmp14_ = gee_multi_map_get_size (_tmp13_);
231 _tmp15_ = _tmp14_;
232 _vala_assert (_tmp15_ == 1, "test_multi_map.size == 1");
233 _tmp16_ = self->test_multi_map;
234 gee_multi_map_set (_tmp16_, "0", "1");
235 _tmp17_ = self->test_multi_map;
236 gee_multi_map_remove_all (_tmp17_, "0");
237 _tmp18_ = self->test_multi_map;
238 _tmp19_ = gee_multi_map_get_size (_tmp18_);
239 _tmp20_ = _tmp19_;
240 _vala_assert (_tmp20_ == 0, "test_multi_map.size == 0");
241 _tmp21_ = self->test_multi_map;
242 gee_multi_map_set (_tmp21_, "0", "0");
243 _tmp22_ = self->test_multi_map;
244 _tmp23_ = gee_multi_map_get_size (_tmp22_);
245 _tmp24_ = _tmp23_;
246 _vala_assert (_tmp24_ == 1, "test_multi_map.size == 1");
247 _tmp25_ = self->test_multi_map;
248 gee_multi_map_set (_tmp25_, "1", "1");
249 _tmp26_ = self->test_multi_map;
250 _tmp27_ = gee_multi_map_get_size (_tmp26_);
251 _tmp28_ = _tmp27_;
252 _vala_assert (_tmp28_ == 2, "test_multi_map.size == 2");
253 }
254
255 static void
multi_map_tests_test_getting_setting(MultiMapTests * self)256 multi_map_tests_test_getting_setting (MultiMapTests* self)
257 {
258 GeeMultiMap* _tmp0_;
259 GeeMultiMap* _tmp1_;
260 GeeMultiMap* _tmp2_;
261 GeeMultiMap* _tmp3_;
262 GeeCollection* _tmp4_;
263 GeeCollection* _tmp5_;
264 gint _tmp6_;
265 gint _tmp7_;
266 GeeMultiMap* _tmp8_;
267 GeeCollection* _tmp9_;
268 GeeCollection* _tmp10_;
269 GeeMultiMap* _tmp11_;
270 GeeCollection* _tmp12_;
271 GeeCollection* _tmp13_;
272 gint _tmp14_;
273 gint _tmp15_;
274 GeeMultiMap* _tmp16_;
275 GeeMultiMap* _tmp17_;
276 GeeCollection* _tmp18_;
277 GeeCollection* _tmp19_;
278 gint _tmp20_;
279 gint _tmp21_;
280 GeeMultiMap* _tmp22_;
281 GeeCollection* _tmp23_;
282 GeeCollection* _tmp24_;
283 GeeMultiMap* _tmp25_;
284 GeeCollection* _tmp26_;
285 GeeCollection* _tmp27_;
286 GeeMultiMap* _tmp28_;
287 GeeMultiMap* _tmp29_;
288 GeeMultiMap* _tmp30_;
289 GeeCollection* _tmp31_;
290 GeeCollection* _tmp32_;
291 gint _tmp33_;
292 gint _tmp34_;
293 GeeMultiMap* _tmp35_;
294 GeeCollection* _tmp36_;
295 GeeCollection* _tmp37_;
296 GeeMultiMap* _tmp38_;
297 GeeCollection* _tmp39_;
298 GeeCollection* _tmp40_;
299 GeeMultiMap* _tmp41_;
300 GeeCollection* _tmp42_;
301 GeeCollection* _tmp43_;
302 gint _tmp44_;
303 gint _tmp45_;
304 GeeMultiMap* _tmp46_;
305 GeeCollection* _tmp47_;
306 GeeCollection* _tmp48_;
307 GeeMultiMap* _tmp49_;
308 GeeMultiMap* _tmp50_;
309 GeeMultiMap* _tmp51_;
310 GeeCollection* _tmp52_;
311 GeeCollection* _tmp53_;
312 GeeMultiMap* _tmp54_;
313 GeeCollection* _tmp55_;
314 GeeCollection* _tmp56_;
315 GeeMultiMap* _tmp57_;
316 GeeMultiMap* _tmp58_;
317 GeeCollection* _tmp59_;
318 GeeCollection* _tmp60_;
319 GeeMultiMap* _tmp61_;
320 GeeMultiMap* _tmp62_;
321 GeeMultiMap* _tmp63_;
322 GeeCollection* _tmp64_;
323 GeeCollection* _tmp65_;
324 GeeMultiMap* _tmp66_;
325 GeeCollection* _tmp67_;
326 GeeCollection* _tmp68_;
327 GeeMultiMap* _tmp69_;
328 GeeMultiMap* _tmp70_;
329 GeeCollection* _tmp71_;
330 GeeCollection* _tmp72_;
331 GeeMultiMap* _tmp73_;
332 GeeMultiMap* _tmp74_;
333 GeeMultiMap* _tmp75_;
334 GeeCollection* _tmp76_;
335 GeeCollection* _tmp77_;
336 GeeMultiMap* _tmp78_;
337 GeeCollection* _tmp79_;
338 GeeCollection* _tmp80_;
339 GeeMultiMap* _tmp81_;
340 GeeMultiMap* _tmp82_;
341 GeeCollection* _tmp83_;
342 GeeCollection* _tmp84_;
343 GeeMultiMap* _tmp85_;
344 GeeMultiMap* _tmp86_;
345 GeeMultiMap* _tmp87_;
346 GeeMultiMap* _tmp88_;
347 GeeMultiMap* _tmp89_;
348 GeeMultiMap* _tmp90_;
349 GeeMultiMap* _tmp91_;
350 gint _tmp92_;
351 gint _tmp93_;
352 GeeMultiMap* _tmp94_;
353 GeeMultiMap* _tmp95_;
354 GeeMultiMap* _tmp96_;
355 GeeCollection* _tmp97_;
356 GeeCollection* _tmp98_;
357 gint _tmp99_;
358 gint _tmp100_;
359 GeeMultiMap* _tmp101_;
360 GeeCollection* _tmp102_;
361 GeeCollection* _tmp103_;
362 GeeMultiMap* _tmp104_;
363 GeeCollection* _tmp105_;
364 GeeCollection* _tmp106_;
365 GeeMultiMap* _tmp107_;
366 GeeCollection* _tmp108_;
367 GeeCollection* _tmp109_;
368 gint _tmp110_;
369 gint _tmp111_;
370 GeeMultiMap* _tmp112_;
371 GeeCollection* _tmp113_;
372 GeeCollection* _tmp114_;
373 GeeMultiMap* _tmp115_;
374 GeeMultiMap* _tmp116_;
375 GeeMultiMap* _tmp117_;
376 GeeCollection* _tmp118_;
377 GeeCollection* _tmp119_;
378 GeeMultiMap* _tmp120_;
379 GeeCollection* _tmp121_;
380 GeeCollection* _tmp122_;
381 GeeMultiMap* _tmp123_;
382 GeeMultiMap* _tmp124_;
383 GeeCollection* _tmp125_;
384 GeeCollection* _tmp126_;
385 GeeMultiMap* _tmp127_;
386 GeeMultiMap* _tmp128_;
387 GeeMultiMap* _tmp129_;
388 GeeCollection* _tmp130_;
389 GeeCollection* _tmp131_;
390 GeeMultiMap* _tmp132_;
391 GeeCollection* _tmp133_;
392 GeeCollection* _tmp134_;
393 GeeMultiMap* _tmp135_;
394 GeeMultiMap* _tmp136_;
395 GeeCollection* _tmp137_;
396 GeeCollection* _tmp138_;
397 g_return_if_fail (self != NULL);
398 _tmp0_ = self->test_multi_map;
399 _vala_assert (_tmp0_ != NULL, "test_multi_map != null");
400 _tmp1_ = self->test_multi_map;
401 gee_multi_map_set (_tmp1_, "0", "0");
402 _tmp2_ = self->test_multi_map;
403 _vala_assert (gee_multi_map_contains (_tmp2_, "0"), "test_multi_map.contains (\"0\")");
404 _tmp3_ = self->test_multi_map;
405 _tmp4_ = gee_multi_map_get (_tmp3_, "0");
406 _tmp5_ = _tmp4_;
407 _tmp6_ = gee_collection_get_size (_tmp5_);
408 _tmp7_ = _tmp6_;
409 _vala_assert (_tmp7_ == 1, "test_multi_map.get (\"0\").size == 1");
410 _g_object_unref0 (_tmp5_);
411 _tmp8_ = self->test_multi_map;
412 _tmp9_ = gee_multi_map_get (_tmp8_, "0");
413 _tmp10_ = _tmp9_;
414 _vala_assert (gee_collection_contains (_tmp10_, "0"), "test_multi_map.get (\"0\").contains (\"0\")");
415 _g_object_unref0 (_tmp10_);
416 _tmp11_ = self->test_multi_map;
417 _tmp12_ = gee_multi_map_get (_tmp11_, "1");
418 _tmp13_ = _tmp12_;
419 _tmp14_ = gee_collection_get_size (_tmp13_);
420 _tmp15_ = _tmp14_;
421 _vala_assert (_tmp15_ == 0, "test_multi_map.get (\"1\").size == 0");
422 _g_object_unref0 (_tmp13_);
423 _tmp16_ = self->test_multi_map;
424 gee_multi_map_set (_tmp16_, "0", "1");
425 _tmp17_ = self->test_multi_map;
426 _tmp18_ = gee_multi_map_get (_tmp17_, "0");
427 _tmp19_ = _tmp18_;
428 _tmp20_ = gee_collection_get_size (_tmp19_);
429 _tmp21_ = _tmp20_;
430 _vala_assert (_tmp21_ == 2, "test_multi_map.get (\"0\").size == 2");
431 _g_object_unref0 (_tmp19_);
432 _tmp22_ = self->test_multi_map;
433 _tmp23_ = gee_multi_map_get (_tmp22_, "0");
434 _tmp24_ = _tmp23_;
435 _vala_assert (gee_collection_contains (_tmp24_, "0"), "test_multi_map.get (\"0\").contains (\"0\")");
436 _g_object_unref0 (_tmp24_);
437 _tmp25_ = self->test_multi_map;
438 _tmp26_ = gee_multi_map_get (_tmp25_, "0");
439 _tmp27_ = _tmp26_;
440 _vala_assert (gee_collection_contains (_tmp27_, "1"), "test_multi_map.get (\"0\").contains (\"1\")");
441 _g_object_unref0 (_tmp27_);
442 _tmp28_ = self->test_multi_map;
443 gee_multi_map_set (_tmp28_, "1", "1");
444 _tmp29_ = self->test_multi_map;
445 _vala_assert (gee_multi_map_contains (_tmp29_, "1"), "test_multi_map.contains (\"1\")");
446 _tmp30_ = self->test_multi_map;
447 _tmp31_ = gee_multi_map_get (_tmp30_, "0");
448 _tmp32_ = _tmp31_;
449 _tmp33_ = gee_collection_get_size (_tmp32_);
450 _tmp34_ = _tmp33_;
451 _vala_assert (_tmp34_ == 2, "test_multi_map.get (\"0\").size == 2");
452 _g_object_unref0 (_tmp32_);
453 _tmp35_ = self->test_multi_map;
454 _tmp36_ = gee_multi_map_get (_tmp35_, "0");
455 _tmp37_ = _tmp36_;
456 _vala_assert (gee_collection_contains (_tmp37_, "0"), "test_multi_map.get (\"0\").contains (\"0\")");
457 _g_object_unref0 (_tmp37_);
458 _tmp38_ = self->test_multi_map;
459 _tmp39_ = gee_multi_map_get (_tmp38_, "0");
460 _tmp40_ = _tmp39_;
461 _vala_assert (gee_collection_contains (_tmp40_, "1"), "test_multi_map.get (\"0\").contains (\"1\")");
462 _g_object_unref0 (_tmp40_);
463 _tmp41_ = self->test_multi_map;
464 _tmp42_ = gee_multi_map_get (_tmp41_, "1");
465 _tmp43_ = _tmp42_;
466 _tmp44_ = gee_collection_get_size (_tmp43_);
467 _tmp45_ = _tmp44_;
468 _vala_assert (_tmp45_ == 1, "test_multi_map.get (\"1\").size == 1");
469 _g_object_unref0 (_tmp43_);
470 _tmp46_ = self->test_multi_map;
471 _tmp47_ = gee_multi_map_get (_tmp46_, "0");
472 _tmp48_ = _tmp47_;
473 _vala_assert (gee_collection_contains (_tmp48_, "1"), "test_multi_map.get (\"0\").contains (\"1\")");
474 _g_object_unref0 (_tmp48_);
475 _tmp49_ = self->test_multi_map;
476 _vala_assert (gee_multi_map_remove (_tmp49_, "0", "0"), "test_multi_map.remove (\"0\", \"0\")");
477 _tmp50_ = self->test_multi_map;
478 _vala_assert (gee_multi_map_contains (_tmp50_, "0"), "test_multi_map.contains (\"0\")");
479 _tmp51_ = self->test_multi_map;
480 _tmp52_ = gee_multi_map_get (_tmp51_, "0");
481 _tmp53_ = _tmp52_;
482 _vala_assert (!gee_collection_contains (_tmp53_, "0"), "! test_multi_map.get (\"0\").contains (\"0\")");
483 _g_object_unref0 (_tmp53_);
484 _tmp54_ = self->test_multi_map;
485 _tmp55_ = gee_multi_map_get (_tmp54_, "0");
486 _tmp56_ = _tmp55_;
487 _vala_assert (gee_collection_contains (_tmp56_, "1"), "test_multi_map.get (\"0\").contains (\"1\")");
488 _g_object_unref0 (_tmp56_);
489 _tmp57_ = self->test_multi_map;
490 _vala_assert (gee_multi_map_contains (_tmp57_, "1"), "test_multi_map.contains (\"1\")");
491 _tmp58_ = self->test_multi_map;
492 _tmp59_ = gee_multi_map_get (_tmp58_, "1");
493 _tmp60_ = _tmp59_;
494 _vala_assert (gee_collection_contains (_tmp60_, "1"), "test_multi_map.get (\"1\").contains (\"1\")");
495 _g_object_unref0 (_tmp60_);
496 _tmp61_ = self->test_multi_map;
497 _vala_assert (gee_multi_map_remove (_tmp61_, "0", "1"), "test_multi_map.remove (\"0\", \"1\")");
498 _tmp62_ = self->test_multi_map;
499 _vala_assert (!gee_multi_map_contains (_tmp62_, "0"), "! test_multi_map.contains (\"0\")");
500 _tmp63_ = self->test_multi_map;
501 _tmp64_ = gee_multi_map_get (_tmp63_, "0");
502 _tmp65_ = _tmp64_;
503 _vala_assert (!gee_collection_contains (_tmp65_, "0"), "! test_multi_map.get (\"0\").contains (\"0\")");
504 _g_object_unref0 (_tmp65_);
505 _tmp66_ = self->test_multi_map;
506 _tmp67_ = gee_multi_map_get (_tmp66_, "0");
507 _tmp68_ = _tmp67_;
508 _vala_assert (!gee_collection_contains (_tmp68_, "1"), "! test_multi_map.get (\"0\").contains (\"1\")");
509 _g_object_unref0 (_tmp68_);
510 _tmp69_ = self->test_multi_map;
511 _vala_assert (gee_multi_map_contains (_tmp69_, "1"), "test_multi_map.contains (\"1\")");
512 _tmp70_ = self->test_multi_map;
513 _tmp71_ = gee_multi_map_get (_tmp70_, "1");
514 _tmp72_ = _tmp71_;
515 _vala_assert (gee_collection_contains (_tmp72_, "1"), "test_multi_map.get (\"1\").contains (\"1\")");
516 _g_object_unref0 (_tmp72_);
517 _tmp73_ = self->test_multi_map;
518 _vala_assert (!gee_multi_map_remove (_tmp73_, "0", "1"), "! test_multi_map.remove (\"0\", \"1\")");
519 _tmp74_ = self->test_multi_map;
520 _vala_assert (!gee_multi_map_contains (_tmp74_, "0"), "! test_multi_map.contains (\"0\")");
521 _tmp75_ = self->test_multi_map;
522 _tmp76_ = gee_multi_map_get (_tmp75_, "0");
523 _tmp77_ = _tmp76_;
524 _vala_assert (!gee_collection_contains (_tmp77_, "0"), "! test_multi_map.get (\"0\").contains (\"0\")");
525 _g_object_unref0 (_tmp77_);
526 _tmp78_ = self->test_multi_map;
527 _tmp79_ = gee_multi_map_get (_tmp78_, "0");
528 _tmp80_ = _tmp79_;
529 _vala_assert (!gee_collection_contains (_tmp80_, "1"), "! test_multi_map.get (\"0\").contains (\"1\")");
530 _g_object_unref0 (_tmp80_);
531 _tmp81_ = self->test_multi_map;
532 _vala_assert (gee_multi_map_contains (_tmp81_, "1"), "test_multi_map.contains (\"1\")");
533 _tmp82_ = self->test_multi_map;
534 _tmp83_ = gee_multi_map_get (_tmp82_, "1");
535 _tmp84_ = _tmp83_;
536 _vala_assert (gee_collection_contains (_tmp84_, "1"), "test_multi_map.get (\"1\").contains (\"1\")");
537 _g_object_unref0 (_tmp84_);
538 _tmp85_ = self->test_multi_map;
539 gee_multi_map_clear (_tmp85_);
540 _tmp86_ = self->test_multi_map;
541 _vala_assert (!gee_multi_map_contains (_tmp86_, "0"), "! test_multi_map.contains (\"0\")");
542 _tmp87_ = self->test_multi_map;
543 _vala_assert (!gee_multi_map_contains (_tmp87_, "1"), "! test_multi_map.contains (\"1\")");
544 _tmp88_ = self->test_multi_map;
545 gee_multi_map_set (_tmp88_, "0", "0");
546 _tmp89_ = self->test_multi_map;
547 gee_multi_map_set (_tmp89_, "0", "1");
548 _tmp90_ = self->test_multi_map;
549 gee_multi_map_set (_tmp90_, "1", "1");
550 _tmp91_ = self->test_multi_map;
551 _tmp92_ = gee_multi_map_get_size (_tmp91_);
552 _tmp93_ = _tmp92_;
553 _vala_assert (_tmp93_ == 3, "test_multi_map.size == 3");
554 _tmp94_ = self->test_multi_map;
555 _vala_assert (gee_multi_map_contains (_tmp94_, "0"), "test_multi_map.contains (\"0\")");
556 _tmp95_ = self->test_multi_map;
557 _vala_assert (gee_multi_map_contains (_tmp95_, "1"), "test_multi_map.contains (\"1\")");
558 _tmp96_ = self->test_multi_map;
559 _tmp97_ = gee_multi_map_get (_tmp96_, "0");
560 _tmp98_ = _tmp97_;
561 _tmp99_ = gee_collection_get_size (_tmp98_);
562 _tmp100_ = _tmp99_;
563 _vala_assert (_tmp100_ == 2, "test_multi_map.get (\"0\").size == 2");
564 _g_object_unref0 (_tmp98_);
565 _tmp101_ = self->test_multi_map;
566 _tmp102_ = gee_multi_map_get (_tmp101_, "0");
567 _tmp103_ = _tmp102_;
568 _vala_assert (gee_collection_contains (_tmp103_, "0"), "test_multi_map.get (\"0\").contains (\"0\")");
569 _g_object_unref0 (_tmp103_);
570 _tmp104_ = self->test_multi_map;
571 _tmp105_ = gee_multi_map_get (_tmp104_, "0");
572 _tmp106_ = _tmp105_;
573 _vala_assert (gee_collection_contains (_tmp106_, "1"), "test_multi_map.get (\"0\").contains (\"1\")");
574 _g_object_unref0 (_tmp106_);
575 _tmp107_ = self->test_multi_map;
576 _tmp108_ = gee_multi_map_get (_tmp107_, "1");
577 _tmp109_ = _tmp108_;
578 _tmp110_ = gee_collection_get_size (_tmp109_);
579 _tmp111_ = _tmp110_;
580 _vala_assert (_tmp111_ == 1, "test_multi_map.get (\"1\").size == 1");
581 _g_object_unref0 (_tmp109_);
582 _tmp112_ = self->test_multi_map;
583 _tmp113_ = gee_multi_map_get (_tmp112_, "0");
584 _tmp114_ = _tmp113_;
585 _vala_assert (gee_collection_contains (_tmp114_, "1"), "test_multi_map.get (\"0\").contains (\"1\")");
586 _g_object_unref0 (_tmp114_);
587 _tmp115_ = self->test_multi_map;
588 _vala_assert (gee_multi_map_remove_all (_tmp115_, "0"), "test_multi_map.remove_all (\"0\")");
589 _tmp116_ = self->test_multi_map;
590 _vala_assert (!gee_multi_map_contains (_tmp116_, "0"), "! test_multi_map.contains (\"0\")");
591 _tmp117_ = self->test_multi_map;
592 _tmp118_ = gee_multi_map_get (_tmp117_, "0");
593 _tmp119_ = _tmp118_;
594 _vala_assert (!gee_collection_contains (_tmp119_, "0"), "! test_multi_map.get (\"0\").contains (\"0\")");
595 _g_object_unref0 (_tmp119_);
596 _tmp120_ = self->test_multi_map;
597 _tmp121_ = gee_multi_map_get (_tmp120_, "0");
598 _tmp122_ = _tmp121_;
599 _vala_assert (!gee_collection_contains (_tmp122_, "1"), "! test_multi_map.get (\"0\").contains (\"1\")");
600 _g_object_unref0 (_tmp122_);
601 _tmp123_ = self->test_multi_map;
602 _vala_assert (gee_multi_map_contains (_tmp123_, "1"), "test_multi_map.contains (\"1\")");
603 _tmp124_ = self->test_multi_map;
604 _tmp125_ = gee_multi_map_get (_tmp124_, "1");
605 _tmp126_ = _tmp125_;
606 _vala_assert (gee_collection_contains (_tmp126_, "1"), "test_multi_map.get (\"1\").contains (\"1\")");
607 _g_object_unref0 (_tmp126_);
608 _tmp127_ = self->test_multi_map;
609 _vala_assert (!gee_multi_map_remove_all (_tmp127_, "0"), "! test_multi_map.remove_all (\"0\")");
610 _tmp128_ = self->test_multi_map;
611 _vala_assert (!gee_multi_map_contains (_tmp128_, "0"), "! test_multi_map.contains (\"0\")");
612 _tmp129_ = self->test_multi_map;
613 _tmp130_ = gee_multi_map_get (_tmp129_, "0");
614 _tmp131_ = _tmp130_;
615 _vala_assert (!gee_collection_contains (_tmp131_, "0"), "! test_multi_map.get (\"0\").contains (\"0\")");
616 _g_object_unref0 (_tmp131_);
617 _tmp132_ = self->test_multi_map;
618 _tmp133_ = gee_multi_map_get (_tmp132_, "0");
619 _tmp134_ = _tmp133_;
620 _vala_assert (!gee_collection_contains (_tmp134_, "1"), "! test_multi_map.get (\"0\").contains (\"1\")");
621 _g_object_unref0 (_tmp134_);
622 _tmp135_ = self->test_multi_map;
623 _vala_assert (gee_multi_map_contains (_tmp135_, "1"), "test_multi_map.contains (\"1\")");
624 _tmp136_ = self->test_multi_map;
625 _tmp137_ = gee_multi_map_get (_tmp136_, "1");
626 _tmp138_ = _tmp137_;
627 _vala_assert (gee_collection_contains (_tmp138_, "1"), "test_multi_map.get (\"1\").contains (\"1\")");
628 _g_object_unref0 (_tmp138_);
629 }
630
631 static void
multi_map_tests_test_keys_all_keys_values(MultiMapTests * self)632 multi_map_tests_test_keys_all_keys_values (MultiMapTests* self)
633 {
634 GeeMultiMap* _tmp0_;
635 GeeMultiMap* _tmp1_;
636 GeeMultiMap* _tmp2_;
637 GeeMultiMap* _tmp3_;
638 GeeSet* keys = NULL;
639 GeeMultiMap* _tmp4_;
640 GeeSet* _tmp5_;
641 GeeMultiSet* all_keys = NULL;
642 GeeMultiMap* _tmp6_;
643 GeeMultiSet* _tmp7_;
644 GeeCollection* values = NULL;
645 GeeMultiMap* _tmp8_;
646 GeeCollection* _tmp9_;
647 GeeSet* _tmp10_;
648 GeeSet* _tmp11_;
649 GeeMultiSet* _tmp12_;
650 GeeMultiSet* _tmp13_;
651 GeeCollection* _tmp14_;
652 GeeCollection* _tmp15_;
653 gboolean zero_found = FALSE;
654 gboolean zero_found_once = FALSE;
655 gboolean one_found = FALSE;
656 gboolean one_found_twice = FALSE;
657 gboolean nothing_more = FALSE;
658 g_return_if_fail (self != NULL);
659 _tmp0_ = self->test_multi_map;
660 _vala_assert (_tmp0_ != NULL, "test_multi_map != null");
661 _tmp1_ = self->test_multi_map;
662 gee_multi_map_set (_tmp1_, "0", "0");
663 _tmp2_ = self->test_multi_map;
664 gee_multi_map_set (_tmp2_, "0", "1");
665 _tmp3_ = self->test_multi_map;
666 gee_multi_map_set (_tmp3_, "1", "1");
667 _tmp4_ = self->test_multi_map;
668 _tmp5_ = gee_multi_map_get_keys (_tmp4_);
669 keys = _tmp5_;
670 _tmp6_ = self->test_multi_map;
671 _tmp7_ = gee_multi_map_get_all_keys (_tmp6_);
672 all_keys = _tmp7_;
673 _tmp8_ = self->test_multi_map;
674 _tmp9_ = gee_multi_map_get_values (_tmp8_);
675 values = _tmp9_;
676 _tmp10_ = keys;
677 _vala_assert (gee_collection_contains ((GeeCollection*) _tmp10_, "0"), "keys.contains (\"0\")");
678 _tmp11_ = keys;
679 _vala_assert (gee_collection_contains ((GeeCollection*) _tmp11_, "1"), "keys.contains (\"1\")");
680 _tmp12_ = all_keys;
681 _vala_assert (gee_multi_set_count (_tmp12_, "0") == 2, "all_keys.count (\"0\") == 2");
682 _tmp13_ = all_keys;
683 _vala_assert (gee_multi_set_count (_tmp13_, "1") == 1, "all_keys.count (\"1\") == 1");
684 _tmp14_ = values;
685 _vala_assert (gee_collection_contains (_tmp14_, "0"), "values.contains (\"0\")");
686 _tmp15_ = values;
687 _vala_assert (gee_collection_contains (_tmp15_, "1"), "values.contains (\"1\")");
688 zero_found = FALSE;
689 zero_found_once = TRUE;
690 one_found = FALSE;
691 one_found_twice = FALSE;
692 nothing_more = TRUE;
693 {
694 GeeIterator* _value_it = NULL;
695 GeeCollection* _tmp16_;
696 GeeIterator* _tmp17_;
697 _tmp16_ = values;
698 _tmp17_ = gee_iterable_iterator ((GeeIterable*) _tmp16_);
699 _value_it = _tmp17_;
700 while (TRUE) {
701 GeeIterator* _tmp18_;
702 gchar* value = NULL;
703 GeeIterator* _tmp19_;
704 gpointer _tmp20_;
705 const gchar* _tmp21_;
706 _tmp18_ = _value_it;
707 if (!gee_iterator_next (_tmp18_)) {
708 break;
709 }
710 _tmp19_ = _value_it;
711 _tmp20_ = gee_iterator_get (_tmp19_);
712 value = (gchar*) _tmp20_;
713 _tmp21_ = value;
714 if (g_strcmp0 (_tmp21_, "0") == 0) {
715 if (zero_found) {
716 zero_found_once = FALSE;
717 }
718 zero_found = TRUE;
719 } else {
720 const gchar* _tmp22_;
721 _tmp22_ = value;
722 if (g_strcmp0 (_tmp22_, "1") == 0) {
723 if (one_found) {
724 if (one_found_twice) {
725 one_found_twice = FALSE;
726 } else {
727 one_found_twice = TRUE;
728 }
729 }
730 one_found = TRUE;
731 } else {
732 nothing_more = FALSE;
733 }
734 }
735 _g_free0 (value);
736 }
737 _g_object_unref0 (_value_it);
738 }
739 _vala_assert (zero_found, "zero_found");
740 _vala_assert (zero_found_once, "zero_found_once");
741 _vala_assert (one_found, "one_found");
742 _vala_assert (one_found_twice, "one_found_twice");
743 _vala_assert (nothing_more, "nothing_more");
744 _g_object_unref0 (values);
745 _g_object_unref0 (all_keys);
746 _g_object_unref0 (keys);
747 }
748
749 static void
multi_map_tests_class_init(MultiMapTestsClass * klass,gpointer klass_data)750 multi_map_tests_class_init (MultiMapTestsClass * klass,
751 gpointer klass_data)
752 {
753 multi_map_tests_parent_class = g_type_class_peek_parent (klass);
754 G_OBJECT_CLASS (klass)->finalize = multi_map_tests_finalize;
755 }
756
757 static void
multi_map_tests_instance_init(MultiMapTests * self,gpointer klass)758 multi_map_tests_instance_init (MultiMapTests * self,
759 gpointer klass)
760 {
761 }
762
763 static void
multi_map_tests_finalize(GObject * obj)764 multi_map_tests_finalize (GObject * obj)
765 {
766 MultiMapTests * self;
767 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_MULTI_MAP_TESTS, MultiMapTests);
768 _g_object_unref0 (self->test_multi_map);
769 G_OBJECT_CLASS (multi_map_tests_parent_class)->finalize (obj);
770 }
771
772 GType
multi_map_tests_get_type(void)773 multi_map_tests_get_type (void)
774 {
775 static volatile gsize multi_map_tests_type_id__volatile = 0;
776 if (g_once_init_enter (&multi_map_tests_type_id__volatile)) {
777 static const GTypeInfo g_define_type_info = { sizeof (MultiMapTestsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) multi_map_tests_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MultiMapTests), 0, (GInstanceInitFunc) multi_map_tests_instance_init, NULL };
778 GType multi_map_tests_type_id;
779 multi_map_tests_type_id = g_type_register_static (GEE_TYPE_TEST_CASE, "MultiMapTests", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
780 g_once_init_leave (&multi_map_tests_type_id__volatile, multi_map_tests_type_id);
781 }
782 return multi_map_tests_type_id__volatile;
783 }
784
785