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