1 /* testreadonlymap.c generated by valac 0.46.6, the Vala compiler
2 * generated from testreadonlymap.vala, do not modify */
3
4 /* testreadonlymap.vala
5 *
6 * Copyright (C) 2008 Jürg Billeter
7 * Copyright (C) 2009 Didier Villevalois
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 * Didier 'Ptitjes' Villevalois <ptitjes@free.fr>
25 */
26
27 #include <glib-object.h>
28 #include <gee.h>
29 #include <stdlib.h>
30 #include <string.h>
31 #include <glib.h>
32
33 #define GEE_TYPE_TEST_CASE (gee_test_case_get_type ())
34 #define GEE_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TEST_CASE, GeeTestCase))
35 #define GEE_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TEST_CASE, GeeTestCaseClass))
36 #define GEE_IS_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TEST_CASE))
37 #define GEE_IS_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TEST_CASE))
38 #define GEE_TEST_CASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TEST_CASE, GeeTestCaseClass))
39
40 typedef struct _GeeTestCase GeeTestCase;
41 typedef struct _GeeTestCaseClass GeeTestCaseClass;
42 typedef struct _GeeTestCasePrivate GeeTestCasePrivate;
43
44 #define TYPE_READ_ONLY_MAP_TESTS (read_only_map_tests_get_type ())
45 #define READ_ONLY_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_READ_ONLY_MAP_TESTS, ReadOnlyMapTests))
46 #define READ_ONLY_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_READ_ONLY_MAP_TESTS, ReadOnlyMapTestsClass))
47 #define IS_READ_ONLY_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_READ_ONLY_MAP_TESTS))
48 #define IS_READ_ONLY_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_READ_ONLY_MAP_TESTS))
49 #define READ_ONLY_MAP_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_READ_ONLY_MAP_TESTS, ReadOnlyMapTestsClass))
50
51 typedef struct _ReadOnlyMapTests ReadOnlyMapTests;
52 typedef struct _ReadOnlyMapTestsClass ReadOnlyMapTestsClass;
53 typedef struct _ReadOnlyMapTestsPrivate ReadOnlyMapTestsPrivate;
54 enum {
55 READ_ONLY_MAP_TESTS_0_PROPERTY,
56 READ_ONLY_MAP_TESTS_NUM_PROPERTIES
57 };
58 static GParamSpec* read_only_map_tests_properties[READ_ONLY_MAP_TESTS_NUM_PROPERTIES];
59 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
60 typedef void (*GeeTestCaseTestMethod) (gpointer user_data);
61 #define _g_free0(var) (var = (g_free (var), NULL))
62 #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
63 #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
64 #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; }
65 #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
66
67 struct _GeeTestCase {
68 GObject parent_instance;
69 GeeTestCasePrivate * priv;
70 };
71
72 struct _GeeTestCaseClass {
73 GObjectClass parent_class;
74 void (*set_up) (GeeTestCase* self);
75 void (*tear_down) (GeeTestCase* self);
76 };
77
78 struct _ReadOnlyMapTests {
79 GeeTestCase parent_instance;
80 ReadOnlyMapTestsPrivate * priv;
81 GeeMap* test_map;
82 GeeMap* ro_map;
83 };
84
85 struct _ReadOnlyMapTestsClass {
86 GeeTestCaseClass parent_class;
87 };
88
89 static gpointer read_only_map_tests_parent_class = NULL;
90
91 GType gee_test_case_get_type (void) G_GNUC_CONST;
92 G_DEFINE_AUTOPTR_CLEANUP_FUNC (GeeTestCase, g_object_unref)
93 GType read_only_map_tests_get_type (void) G_GNUC_CONST;
94 G_DEFINE_AUTOPTR_CLEANUP_FUNC (ReadOnlyMapTests, g_object_unref)
95 ReadOnlyMapTests* read_only_map_tests_new (void);
96 ReadOnlyMapTests* read_only_map_tests_construct (GType object_type);
97 GeeTestCase* gee_test_case_construct (GType object_type,
98 const gchar* name);
99 void gee_test_case_add_test (GeeTestCase* self,
100 const gchar* name,
101 GeeTestCaseTestMethod test,
102 gpointer test_target,
103 GDestroyNotify test_target_destroy_notify);
104 void read_only_map_tests_test_unique_read_only_view_instance (ReadOnlyMapTests* self);
105 static void _read_only_map_tests_test_unique_read_only_view_instance_gee_test_case_test_method (gpointer self);
106 void read_only_map_tests_test_immutable_iterator (ReadOnlyMapTests* self);
107 static void _read_only_map_tests_test_immutable_iterator_gee_test_case_test_method (gpointer self);
108 void read_only_map_tests_test_immutable (ReadOnlyMapTests* self);
109 static void _read_only_map_tests_test_immutable_gee_test_case_test_method (gpointer self);
110 void read_only_map_tests_test_accurate_view (ReadOnlyMapTests* self);
111 static void _read_only_map_tests_test_accurate_view_gee_test_case_test_method (gpointer self);
112 static void read_only_map_tests_real_set_up (GeeTestCase* base);
113 static void read_only_map_tests_real_tear_down (GeeTestCase* base);
114 static void read_only_map_tests_finalize (GObject * obj);
115
116 static void
_read_only_map_tests_test_unique_read_only_view_instance_gee_test_case_test_method(gpointer self)117 _read_only_map_tests_test_unique_read_only_view_instance_gee_test_case_test_method (gpointer self)
118 {
119 read_only_map_tests_test_unique_read_only_view_instance ((ReadOnlyMapTests*) self);
120 }
121
122 static void
_read_only_map_tests_test_immutable_iterator_gee_test_case_test_method(gpointer self)123 _read_only_map_tests_test_immutable_iterator_gee_test_case_test_method (gpointer self)
124 {
125 read_only_map_tests_test_immutable_iterator ((ReadOnlyMapTests*) self);
126 }
127
128 static void
_read_only_map_tests_test_immutable_gee_test_case_test_method(gpointer self)129 _read_only_map_tests_test_immutable_gee_test_case_test_method (gpointer self)
130 {
131 read_only_map_tests_test_immutable ((ReadOnlyMapTests*) self);
132 }
133
134 static void
_read_only_map_tests_test_accurate_view_gee_test_case_test_method(gpointer self)135 _read_only_map_tests_test_accurate_view_gee_test_case_test_method (gpointer self)
136 {
137 read_only_map_tests_test_accurate_view ((ReadOnlyMapTests*) self);
138 }
139
140 ReadOnlyMapTests*
read_only_map_tests_construct(GType object_type)141 read_only_map_tests_construct (GType object_type)
142 {
143 ReadOnlyMapTests * self = NULL;
144 self = (ReadOnlyMapTests*) gee_test_case_construct (object_type, "ReadOnlyMap");
145 gee_test_case_add_test ((GeeTestCase*) self, "[ReadOnlyMap] unique read-only view instance", _read_only_map_tests_test_unique_read_only_view_instance_gee_test_case_test_method, g_object_ref (self), g_object_unref);
146 gee_test_case_add_test ((GeeTestCase*) self, "[ReadOnlyMap] immutable iterator", _read_only_map_tests_test_immutable_iterator_gee_test_case_test_method, g_object_ref (self), g_object_unref);
147 gee_test_case_add_test ((GeeTestCase*) self, "[ReadOnlyMap] immutable", _read_only_map_tests_test_immutable_gee_test_case_test_method, g_object_ref (self), g_object_unref);
148 gee_test_case_add_test ((GeeTestCase*) self, "[ReadOnlyMap] accurate view", _read_only_map_tests_test_accurate_view_gee_test_case_test_method, g_object_ref (self), g_object_unref);
149 return self;
150 }
151
152 ReadOnlyMapTests*
read_only_map_tests_new(void)153 read_only_map_tests_new (void)
154 {
155 return read_only_map_tests_construct (TYPE_READ_ONLY_MAP_TESTS);
156 }
157
158 static void
read_only_map_tests_real_set_up(GeeTestCase * base)159 read_only_map_tests_real_set_up (GeeTestCase* base)
160 {
161 ReadOnlyMapTests * self;
162 GeeTreeMap* _tmp0_;
163 GeeMap* _tmp1_;
164 GeeMap* _tmp2_;
165 GeeMap* _tmp3_;
166 self = (ReadOnlyMapTests*) base;
167 _tmp0_ = gee_tree_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL, NULL, NULL, NULL);
168 _g_object_unref0 (self->test_map);
169 self->test_map = (GeeMap*) _tmp0_;
170 _tmp1_ = self->test_map;
171 _tmp2_ = gee_map_get_read_only_view (_tmp1_);
172 _tmp3_ = _tmp2_;
173 _g_object_unref0 (self->ro_map);
174 self->ro_map = _tmp3_;
175 }
176
177 static void
read_only_map_tests_real_tear_down(GeeTestCase * base)178 read_only_map_tests_real_tear_down (GeeTestCase* base)
179 {
180 ReadOnlyMapTests * self;
181 self = (ReadOnlyMapTests*) base;
182 _g_object_unref0 (self->test_map);
183 self->test_map = NULL;
184 _g_object_unref0 (self->ro_map);
185 self->ro_map = NULL;
186 }
187
188 void
read_only_map_tests_test_unique_read_only_view_instance(ReadOnlyMapTests * self)189 read_only_map_tests_test_unique_read_only_view_instance (ReadOnlyMapTests* self)
190 {
191 GeeMap* another_ro_map = NULL;
192 GeeMap* _tmp0_;
193 GeeMap* _tmp1_;
194 GeeMap* _tmp2_;
195 GeeMap* _tmp3_;
196 GeeMap* _tmp4_;
197 GeeMap* _tmp5_;
198 GObject* _tmp6_;
199 GeeMap* _tmp7_;
200 gconstpointer _tmp8_;
201 GeeMap* _tmp9_;
202 GeeMap* _tmp10_;
203 GeeMap* _tmp11_;
204 GeeMap* _tmp12_;
205 gconstpointer _tmp13_;
206 GeeMap* _tmp14_;
207 GeeMap* _tmp15_;
208 GeeMap* _tmp16_;
209 GeeMap* _tmp17_;
210 GeeMap* _tmp18_;
211 g_return_if_fail (self != NULL);
212 _tmp0_ = self->test_map;
213 _tmp1_ = gee_map_get_read_only_view (_tmp0_);
214 _tmp2_ = _tmp1_;
215 another_ro_map = _tmp2_;
216 _tmp3_ = self->ro_map;
217 _tmp4_ = another_ro_map;
218 _vala_assert (_tmp3_ == _tmp4_, "ro_map == another_ro_map");
219 _tmp5_ = self->ro_map;
220 _tmp6_ = g_object_new (G_TYPE_OBJECT, NULL);
221 g_object_set_data_full ((GObject*) _tmp5_, "marker", _tmp6_, g_object_unref);
222 _tmp7_ = another_ro_map;
223 _tmp8_ = g_object_get_data ((GObject*) _tmp7_, "marker");
224 _vala_assert (((GObject*) _tmp8_) != NULL, "another_ro_map.get_data<Object> (\"marker\") != null");
225 _g_object_unref0 (another_ro_map);
226 another_ro_map = NULL;
227 _g_object_unref0 (self->ro_map);
228 self->ro_map = NULL;
229 _tmp9_ = self->test_map;
230 _tmp10_ = gee_map_get_read_only_view (_tmp9_);
231 _tmp11_ = _tmp10_;
232 _g_object_unref0 (another_ro_map);
233 another_ro_map = _tmp11_;
234 _tmp12_ = another_ro_map;
235 _tmp13_ = g_object_get_data ((GObject*) _tmp12_, "marker");
236 _vala_assert (((GObject*) _tmp13_) == NULL, "another_ro_map.get_data<Object> (\"marker\") == null");
237 _tmp14_ = another_ro_map;
238 _tmp15_ = another_ro_map;
239 _tmp16_ = gee_map_get_read_only_view (_tmp15_);
240 _tmp17_ = _tmp16_;
241 _tmp18_ = _tmp17_;
242 _vala_assert (_tmp14_ == _tmp18_, "another_ro_map == another_ro_map.read_only_view");
243 _g_object_unref0 (_tmp18_);
244 _g_object_unref0 (another_ro_map);
245 }
246
247 void
read_only_map_tests_test_immutable_iterator(ReadOnlyMapTests * self)248 read_only_map_tests_test_immutable_iterator (ReadOnlyMapTests* self)
249 {
250 GeeMap* _tmp0_;
251 GeeMap* _tmp1_;
252 GeeMap* _tmp2_;
253 gint _tmp3_;
254 gint _tmp4_;
255 GeeMap* _tmp5_;
256 GeeMap* _tmp6_;
257 GeeMap* _tmp7_;
258 GeeMap* _tmp8_;
259 GeeIterator* iterator = NULL;
260 GeeMap* _tmp9_;
261 GeeSet* _tmp10_;
262 GeeSet* _tmp11_;
263 GeeSet* _tmp12_;
264 GeeIterator* _tmp13_;
265 GeeIterator* _tmp14_;
266 GeeIterator* _tmp15_;
267 GeeIterator* _tmp16_;
268 GeeIterator* _tmp17_;
269 gpointer _tmp18_;
270 gchar* _tmp19_;
271 GeeIterator* _tmp20_;
272 GeeIterator* _tmp21_;
273 GeeIterator* _tmp22_;
274 gpointer _tmp23_;
275 gchar* _tmp24_;
276 GeeIterator* _tmp25_;
277 GeeIterator* _tmp26_;
278 GeeMap* _tmp27_;
279 GeeSet* _tmp28_;
280 GeeSet* _tmp29_;
281 GeeSet* _tmp30_;
282 GeeIterator* _tmp31_;
283 GeeIterator* _tmp32_;
284 GeeIterator* _tmp33_;
285 GeeIterator* _tmp34_;
286 gpointer _tmp35_;
287 gchar* _tmp36_;
288 GeeMap* _tmp38_;
289 gint _tmp39_;
290 gint _tmp40_;
291 GeeMap* _tmp41_;
292 GeeMap* _tmp42_;
293 GeeMap* _tmp43_;
294 GeeMap* _tmp44_;
295 g_return_if_fail (self != NULL);
296 _tmp0_ = self->test_map;
297 gee_map_set (_tmp0_, "one", "one");
298 _tmp1_ = self->test_map;
299 gee_map_set (_tmp1_, "two", "two");
300 _tmp2_ = self->ro_map;
301 _tmp3_ = gee_map_get_size (_tmp2_);
302 _tmp4_ = _tmp3_;
303 _vala_assert (_tmp4_ == 2, "ro_map.size == 2");
304 _tmp5_ = self->ro_map;
305 _vala_assert (gee_map_has_key (_tmp5_, "one"), "ro_map.has_key (\"one\")");
306 _tmp6_ = self->ro_map;
307 _vala_assert (gee_map_has (_tmp6_, "one", "one"), "ro_map.has (\"one\", \"one\")");
308 _tmp7_ = self->ro_map;
309 _vala_assert (gee_map_has_key (_tmp7_, "two"), "ro_map.has_key (\"two\")");
310 _tmp8_ = self->ro_map;
311 _vala_assert (gee_map_has (_tmp8_, "two", "two"), "ro_map.has (\"two\", \"two\")");
312 _tmp9_ = self->ro_map;
313 _tmp10_ = gee_map_get_keys (_tmp9_);
314 _tmp11_ = _tmp10_;
315 _tmp12_ = _tmp11_;
316 _tmp13_ = gee_iterable_iterator ((GeeIterable*) _tmp12_);
317 _tmp14_ = _tmp13_;
318 _g_object_unref0 (_tmp12_);
319 iterator = _tmp14_;
320 _tmp15_ = iterator;
321 _vala_assert (gee_iterator_has_next (_tmp15_), "iterator.has_next ()");
322 _tmp16_ = iterator;
323 _vala_assert (gee_iterator_next (_tmp16_), "iterator.next ()");
324 _tmp17_ = iterator;
325 _tmp18_ = gee_iterator_get (_tmp17_);
326 _tmp19_ = (gchar*) _tmp18_;
327 _vala_assert (g_strcmp0 (_tmp19_, "one") == 0, "iterator.get () == \"one\"");
328 _g_free0 (_tmp19_);
329 _tmp20_ = iterator;
330 _vala_assert (gee_iterator_has_next (_tmp20_), "iterator.has_next ()");
331 _tmp21_ = iterator;
332 _vala_assert (gee_iterator_next (_tmp21_), "iterator.next ()");
333 _tmp22_ = iterator;
334 _tmp23_ = gee_iterator_get (_tmp22_);
335 _tmp24_ = (gchar*) _tmp23_;
336 _vala_assert (g_strcmp0 (_tmp24_, "two") == 0, "iterator.get () == \"two\"");
337 _g_free0 (_tmp24_);
338 _tmp25_ = iterator;
339 _vala_assert (!gee_iterator_has_next (_tmp25_), "! iterator.has_next ()");
340 _tmp26_ = iterator;
341 _vala_assert (!gee_iterator_next (_tmp26_), "! iterator.next ()");
342 _tmp27_ = self->ro_map;
343 _tmp28_ = gee_map_get_keys (_tmp27_);
344 _tmp29_ = _tmp28_;
345 _tmp30_ = _tmp29_;
346 _tmp31_ = gee_iterable_iterator ((GeeIterable*) _tmp30_);
347 _g_object_unref0 (iterator);
348 iterator = _tmp31_;
349 _g_object_unref0 (_tmp30_);
350 _tmp32_ = iterator;
351 _vala_assert (gee_iterator_has_next (_tmp32_), "iterator.has_next ()");
352 _tmp33_ = iterator;
353 _vala_assert (gee_iterator_next (_tmp33_), "iterator.next ()");
354 _tmp34_ = iterator;
355 _tmp35_ = gee_iterator_get (_tmp34_);
356 _tmp36_ = (gchar*) _tmp35_;
357 _vala_assert (g_strcmp0 (_tmp36_, "one") == 0, "iterator.get () == \"one\"");
358 _g_free0 (_tmp36_);
359 if (g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) {
360 GeeIterator* _tmp37_;
361 _tmp37_ = iterator;
362 gee_iterator_remove (_tmp37_);
363 exit (0);
364 }
365 g_test_trap_assert_failed ();
366 _tmp38_ = self->ro_map;
367 _tmp39_ = gee_map_get_size (_tmp38_);
368 _tmp40_ = _tmp39_;
369 _vala_assert (_tmp40_ == 2, "ro_map.size == 2");
370 _tmp41_ = self->ro_map;
371 _vala_assert (gee_map_has_key (_tmp41_, "one"), "ro_map.has_key (\"one\")");
372 _tmp42_ = self->ro_map;
373 _vala_assert (gee_map_has (_tmp42_, "one", "one"), "ro_map.has (\"one\", \"one\")");
374 _tmp43_ = self->ro_map;
375 _vala_assert (gee_map_has_key (_tmp43_, "two"), "ro_map.has_key (\"two\")");
376 _tmp44_ = self->ro_map;
377 _vala_assert (gee_map_has (_tmp44_, "two", "two"), "ro_map.has (\"two\", \"two\")");
378 _g_object_unref0 (iterator);
379 }
380
381 void
read_only_map_tests_test_immutable(ReadOnlyMapTests * self)382 read_only_map_tests_test_immutable (ReadOnlyMapTests* self)
383 {
384 GeeMap* _tmp0_;
385 GeeMap* _tmp1_;
386 gint _tmp2_;
387 gint _tmp3_;
388 GeeMap* _tmp4_;
389 GeeMap* _tmp5_;
390 GeeMap* dummy = NULL;
391 GeeHashMap* _tmp6_;
392 GeeMap* _tmp7_;
393 GeeMap* _tmp8_;
394 GeeMap* _tmp10_;
395 gint _tmp11_;
396 gint _tmp12_;
397 GeeMap* _tmp13_;
398 GeeMap* _tmp14_;
399 GeeMap* _tmp16_;
400 gint _tmp17_;
401 gint _tmp18_;
402 GeeMap* _tmp19_;
403 GeeMap* _tmp20_;
404 GeeMap* _tmp22_;
405 gint _tmp23_;
406 gint _tmp24_;
407 GeeMap* _tmp25_;
408 GeeMap* _tmp26_;
409 GeeMap* _tmp29_;
410 gint _tmp30_;
411 gint _tmp31_;
412 GeeMap* _tmp32_;
413 GeeMap* _tmp33_;
414 GeeMap* _tmp36_;
415 gint _tmp37_;
416 gint _tmp38_;
417 GeeMap* _tmp39_;
418 GeeMap* _tmp40_;
419 g_return_if_fail (self != NULL);
420 _tmp0_ = self->test_map;
421 gee_map_set (_tmp0_, "one", "one");
422 _tmp1_ = self->ro_map;
423 _tmp2_ = gee_map_get_size (_tmp1_);
424 _tmp3_ = _tmp2_;
425 _vala_assert (_tmp3_ == 1, "ro_map.size == 1");
426 _tmp4_ = self->ro_map;
427 _vala_assert (gee_map_has_key (_tmp4_, "one"), "ro_map.has_key (\"one\")");
428 _tmp5_ = self->ro_map;
429 _vala_assert (gee_map_has (_tmp5_, "one", "one"), "ro_map.has (\"one\", \"one\")");
430 _tmp6_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
431 dummy = (GeeMap*) _tmp6_;
432 _tmp7_ = dummy;
433 gee_map_set (_tmp7_, "one", "one");
434 _tmp8_ = dummy;
435 gee_map_set (_tmp8_, "two", "two");
436 if (g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) {
437 GeeMap* _tmp9_;
438 _tmp9_ = self->ro_map;
439 gee_map_set (_tmp9_, "two", "two");
440 exit (0);
441 }
442 g_test_trap_assert_failed ();
443 _tmp10_ = self->ro_map;
444 _tmp11_ = gee_map_get_size (_tmp10_);
445 _tmp12_ = _tmp11_;
446 _vala_assert (_tmp12_ == 1, "ro_map.size == 1");
447 _tmp13_ = self->ro_map;
448 _vala_assert (gee_map_has_key (_tmp13_, "one"), "ro_map.has_key (\"one\")");
449 _tmp14_ = self->ro_map;
450 _vala_assert (gee_map_has (_tmp14_, "one", "one"), "ro_map.has (\"one\", \"one\")");
451 if (g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) {
452 GeeMap* _tmp15_;
453 _tmp15_ = self->ro_map;
454 gee_map_clear (_tmp15_);
455 exit (0);
456 }
457 g_test_trap_assert_failed ();
458 _tmp16_ = self->ro_map;
459 _tmp17_ = gee_map_get_size (_tmp16_);
460 _tmp18_ = _tmp17_;
461 _vala_assert (_tmp18_ == 1, "ro_map.size == 1");
462 _tmp19_ = self->ro_map;
463 _vala_assert (gee_map_has_key (_tmp19_, "one"), "ro_map.has_key (\"one\")");
464 _tmp20_ = self->ro_map;
465 _vala_assert (gee_map_has (_tmp20_, "one", "one"), "ro_map.has (\"one\", \"one\")");
466 if (g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) {
467 GeeMap* _tmp21_;
468 _tmp21_ = self->ro_map;
469 _vala_assert (gee_map_unset (_tmp21_, "one", NULL), "ro_map.unset (\"one\")");
470 exit (0);
471 }
472 g_test_trap_assert_failed ();
473 _tmp22_ = self->ro_map;
474 _tmp23_ = gee_map_get_size (_tmp22_);
475 _tmp24_ = _tmp23_;
476 _vala_assert (_tmp24_ == 1, "ro_map.size == 1");
477 _tmp25_ = self->ro_map;
478 _vala_assert (gee_map_has_key (_tmp25_, "one"), "ro_map.has_key (\"one\")");
479 _tmp26_ = self->ro_map;
480 _vala_assert (gee_map_has (_tmp26_, "one", "one"), "ro_map.has (\"one\", \"one\")");
481 if (g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) {
482 GeeMap* _tmp27_;
483 GeeMap* _tmp28_;
484 _tmp27_ = self->ro_map;
485 _tmp28_ = dummy;
486 gee_map_set_all (_tmp27_, _tmp28_);
487 exit (0);
488 }
489 g_test_trap_assert_failed ();
490 _tmp29_ = self->ro_map;
491 _tmp30_ = gee_map_get_size (_tmp29_);
492 _tmp31_ = _tmp30_;
493 _vala_assert (_tmp31_ == 1, "ro_map.size == 1");
494 _tmp32_ = self->ro_map;
495 _vala_assert (gee_map_has_key (_tmp32_, "one"), "ro_map.has_key (\"one\")");
496 _tmp33_ = self->ro_map;
497 _vala_assert (gee_map_has (_tmp33_, "one", "one"), "ro_map.has (\"one\", \"one\")");
498 if (g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) {
499 GeeMap* _tmp34_;
500 GeeMap* _tmp35_;
501 _tmp34_ = self->ro_map;
502 _tmp35_ = dummy;
503 _vala_assert (gee_map_unset_all (_tmp34_, _tmp35_), "ro_map.unset_all (dummy)");
504 exit (0);
505 }
506 g_test_trap_assert_failed ();
507 _tmp36_ = self->ro_map;
508 _tmp37_ = gee_map_get_size (_tmp36_);
509 _tmp38_ = _tmp37_;
510 _vala_assert (_tmp38_ == 1, "ro_map.size == 1");
511 _tmp39_ = self->ro_map;
512 _vala_assert (gee_map_has_key (_tmp39_, "one"), "ro_map.has_key (\"one\")");
513 _tmp40_ = self->ro_map;
514 _vala_assert (gee_map_has (_tmp40_, "one", "one"), "ro_map.has (\"one\", \"one\")");
515 _g_object_unref0 (dummy);
516 }
517
518 void
read_only_map_tests_test_accurate_view(ReadOnlyMapTests * self)519 read_only_map_tests_test_accurate_view (ReadOnlyMapTests* self)
520 {
521 GeeMap* dummy = NULL;
522 GeeHashMap* _tmp0_;
523 GeeMap* _tmp1_;
524 gint _tmp2_;
525 gint _tmp3_;
526 GeeMap* _tmp4_;
527 gboolean _tmp5_;
528 gboolean _tmp6_;
529 GeeMap* _tmp7_;
530 GeeMap* _tmp8_;
531 GeeMap* _tmp9_;
532 gpointer _tmp10_;
533 gchar* _tmp11_;
534 GeeMap* _tmp12_;
535 GeeMap* _tmp13_;
536 gint _tmp14_;
537 gint _tmp15_;
538 GeeMap* _tmp16_;
539 gboolean _tmp17_;
540 gboolean _tmp18_;
541 GeeMap* _tmp19_;
542 GeeMap* _tmp20_;
543 GeeMap* _tmp21_;
544 gpointer _tmp22_;
545 gchar* _tmp23_;
546 GeeMap* _tmp24_;
547 GeeMap* _tmp25_;
548 gint _tmp26_;
549 gint _tmp27_;
550 GeeMap* _tmp28_;
551 gboolean _tmp29_;
552 gboolean _tmp30_;
553 GeeMap* _tmp31_;
554 GeeMap* _tmp32_;
555 GeeMap* _tmp33_;
556 gpointer _tmp34_;
557 gchar* _tmp35_;
558 GeeMap* _tmp36_;
559 GeeMap* _tmp37_;
560 GeeMap* _tmp38_;
561 gpointer _tmp39_;
562 gchar* _tmp40_;
563 GeeMap* _tmp41_;
564 GeeMap* _tmp42_;
565 GeeMap* _tmp43_;
566 gint _tmp44_;
567 gint _tmp45_;
568 GeeMap* _tmp46_;
569 gboolean _tmp47_;
570 gboolean _tmp48_;
571 GeeMap* _tmp49_;
572 GeeMap* _tmp50_;
573 GeeMap* _tmp51_;
574 gpointer _tmp52_;
575 gchar* _tmp53_;
576 GeeMap* _tmp54_;
577 GeeMap* _tmp55_;
578 GeeMap* _tmp56_;
579 gpointer _tmp57_;
580 gchar* _tmp58_;
581 GeeMap* _tmp59_;
582 GeeMap* _tmp60_;
583 GeeMap* _tmp61_;
584 gint _tmp62_;
585 gint _tmp63_;
586 GeeMap* _tmp64_;
587 gboolean _tmp65_;
588 gboolean _tmp66_;
589 GeeMap* _tmp67_;
590 GeeMap* _tmp68_;
591 GeeMap* _tmp69_;
592 gpointer _tmp70_;
593 gchar* _tmp71_;
594 GeeMap* _tmp72_;
595 gpointer _tmp73_;
596 gchar* _tmp74_;
597 g_return_if_fail (self != NULL);
598 _tmp0_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
599 dummy = (GeeMap*) _tmp0_;
600 gee_map_set (dummy, "one", "one");
601 gee_map_set (dummy, "two", "two");
602 _tmp1_ = self->ro_map;
603 _tmp2_ = gee_map_get_size (_tmp1_);
604 _tmp3_ = _tmp2_;
605 _vala_assert (_tmp3_ == 0, "ro_map.size == 0");
606 _tmp4_ = self->ro_map;
607 _tmp5_ = gee_map_get_is_empty (_tmp4_);
608 _tmp6_ = _tmp5_;
609 _vala_assert (_tmp6_, "ro_map.is_empty");
610 _tmp7_ = self->ro_map;
611 _vala_assert (!gee_map_has_key (_tmp7_, "one"), "! ro_map.has_key (\"one\")");
612 _tmp8_ = self->ro_map;
613 _vala_assert (!gee_map_has (_tmp8_, "one", "one"), "! ro_map.has (\"one\", \"one\")");
614 _tmp9_ = self->ro_map;
615 _tmp10_ = gee_map_get (_tmp9_, "one");
616 _tmp11_ = (gchar*) _tmp10_;
617 _vala_assert (_tmp11_ == NULL, "ro_map.get (\"one\") == null");
618 _g_free0 (_tmp11_);
619 _tmp12_ = self->test_map;
620 gee_map_set (_tmp12_, "one", "one");
621 _tmp13_ = self->ro_map;
622 _tmp14_ = gee_map_get_size (_tmp13_);
623 _tmp15_ = _tmp14_;
624 _vala_assert (_tmp15_ == 1, "ro_map.size == 1");
625 _tmp16_ = self->ro_map;
626 _tmp17_ = gee_map_get_is_empty (_tmp16_);
627 _tmp18_ = _tmp17_;
628 _vala_assert (!_tmp18_, "! ro_map.is_empty");
629 _tmp19_ = self->ro_map;
630 _vala_assert (gee_map_has_key (_tmp19_, "one"), "ro_map.has_key (\"one\")");
631 _tmp20_ = self->ro_map;
632 _vala_assert (gee_map_has (_tmp20_, "one", "one"), "ro_map.has (\"one\", \"one\")");
633 _tmp21_ = self->ro_map;
634 _tmp22_ = gee_map_get (_tmp21_, "one");
635 _tmp23_ = (gchar*) _tmp22_;
636 _vala_assert (g_strcmp0 (_tmp23_, "one") == 0, "ro_map.get (\"one\") == \"one\"");
637 _g_free0 (_tmp23_);
638 _tmp24_ = self->test_map;
639 gee_map_set (_tmp24_, "two", "two");
640 _tmp25_ = self->ro_map;
641 _tmp26_ = gee_map_get_size (_tmp25_);
642 _tmp27_ = _tmp26_;
643 _vala_assert (_tmp27_ == 2, "ro_map.size == 2");
644 _tmp28_ = self->ro_map;
645 _tmp29_ = gee_map_get_is_empty (_tmp28_);
646 _tmp30_ = _tmp29_;
647 _vala_assert (!_tmp30_, "! ro_map.is_empty");
648 _tmp31_ = self->ro_map;
649 _vala_assert (gee_map_has_key (_tmp31_, "one"), "ro_map.has_key (\"one\")");
650 _tmp32_ = self->ro_map;
651 _vala_assert (gee_map_has (_tmp32_, "one", "one"), "ro_map.has (\"one\", \"one\")");
652 _tmp33_ = self->ro_map;
653 _tmp34_ = gee_map_get (_tmp33_, "one");
654 _tmp35_ = (gchar*) _tmp34_;
655 _vala_assert (g_strcmp0 (_tmp35_, "one") == 0, "ro_map.get (\"one\") == \"one\"");
656 _g_free0 (_tmp35_);
657 _tmp36_ = self->ro_map;
658 _vala_assert (gee_map_has_key (_tmp36_, "two"), "ro_map.has_key (\"two\")");
659 _tmp37_ = self->ro_map;
660 _vala_assert (gee_map_has (_tmp37_, "two", "two"), "ro_map.has (\"two\", \"two\")");
661 _tmp38_ = self->ro_map;
662 _tmp39_ = gee_map_get (_tmp38_, "two");
663 _tmp40_ = (gchar*) _tmp39_;
664 _vala_assert (g_strcmp0 (_tmp40_, "two") == 0, "ro_map.get (\"two\") == \"two\"");
665 _g_free0 (_tmp40_);
666 _tmp41_ = self->ro_map;
667 _vala_assert (gee_map_has_all (_tmp41_, dummy), "ro_map.has_all (dummy)");
668 _tmp42_ = self->test_map;
669 _vala_assert (gee_map_unset (_tmp42_, "one", NULL), "test_map.unset (\"one\")");
670 _tmp43_ = self->ro_map;
671 _tmp44_ = gee_map_get_size (_tmp43_);
672 _tmp45_ = _tmp44_;
673 _vala_assert (_tmp45_ == 1, "ro_map.size == 1");
674 _tmp46_ = self->ro_map;
675 _tmp47_ = gee_map_get_is_empty (_tmp46_);
676 _tmp48_ = _tmp47_;
677 _vala_assert (!_tmp48_, "! ro_map.is_empty");
678 _tmp49_ = self->ro_map;
679 _vala_assert (!gee_map_has_key (_tmp49_, "one"), "! ro_map.has_key (\"one\")");
680 _tmp50_ = self->ro_map;
681 _vala_assert (!gee_map_has (_tmp50_, "one", "one"), "! ro_map.has (\"one\", \"one\")");
682 _tmp51_ = self->ro_map;
683 _tmp52_ = gee_map_get (_tmp51_, "one");
684 _tmp53_ = (gchar*) _tmp52_;
685 _vala_assert (_tmp53_ == NULL, "ro_map.get (\"one\") == null");
686 _g_free0 (_tmp53_);
687 _tmp54_ = self->ro_map;
688 _vala_assert (gee_map_has_key (_tmp54_, "two"), "ro_map.has_key (\"two\")");
689 _tmp55_ = self->ro_map;
690 _vala_assert (gee_map_has (_tmp55_, "two", "two"), "ro_map.has (\"two\", \"two\")");
691 _tmp56_ = self->ro_map;
692 _tmp57_ = gee_map_get (_tmp56_, "two");
693 _tmp58_ = (gchar*) _tmp57_;
694 _vala_assert (g_strcmp0 (_tmp58_, "two") == 0, "ro_map.get (\"two\") == \"two\"");
695 _g_free0 (_tmp58_);
696 _tmp59_ = self->ro_map;
697 _vala_assert (!gee_map_has_all (_tmp59_, dummy), "! ro_map.has_all (dummy)");
698 _tmp60_ = self->test_map;
699 gee_map_clear (_tmp60_);
700 _tmp61_ = self->ro_map;
701 _tmp62_ = gee_map_get_size (_tmp61_);
702 _tmp63_ = _tmp62_;
703 _vala_assert (_tmp63_ == 0, "ro_map.size == 0");
704 _tmp64_ = self->ro_map;
705 _tmp65_ = gee_map_get_is_empty (_tmp64_);
706 _tmp66_ = _tmp65_;
707 _vala_assert (_tmp66_, "ro_map.is_empty");
708 _tmp67_ = self->ro_map;
709 _vala_assert (!gee_map_has (_tmp67_, "one", "one"), "! ro_map.has (\"one\", \"one\")");
710 _tmp68_ = self->ro_map;
711 _vala_assert (!gee_map_has (_tmp68_, "two", "two"), "! ro_map.has (\"two\", \"two\")");
712 _tmp69_ = self->ro_map;
713 _tmp70_ = gee_map_get (_tmp69_, "one");
714 _tmp71_ = (gchar*) _tmp70_;
715 _vala_assert (_tmp71_ == NULL, "ro_map.get (\"one\") == null");
716 _g_free0 (_tmp71_);
717 _tmp72_ = self->ro_map;
718 _tmp73_ = gee_map_get (_tmp72_, "two");
719 _tmp74_ = (gchar*) _tmp73_;
720 _vala_assert (_tmp74_ == NULL, "ro_map.get (\"two\") == null");
721 _g_free0 (_tmp74_);
722 _g_object_unref0 (dummy);
723 }
724
725 static void
read_only_map_tests_class_init(ReadOnlyMapTestsClass * klass,gpointer klass_data)726 read_only_map_tests_class_init (ReadOnlyMapTestsClass * klass,
727 gpointer klass_data)
728 {
729 read_only_map_tests_parent_class = g_type_class_peek_parent (klass);
730 ((GeeTestCaseClass *) klass)->set_up = (void (*) (GeeTestCase*)) read_only_map_tests_real_set_up;
731 ((GeeTestCaseClass *) klass)->tear_down = (void (*) (GeeTestCase*)) read_only_map_tests_real_tear_down;
732 G_OBJECT_CLASS (klass)->finalize = read_only_map_tests_finalize;
733 }
734
735 static void
read_only_map_tests_instance_init(ReadOnlyMapTests * self,gpointer klass)736 read_only_map_tests_instance_init (ReadOnlyMapTests * self,
737 gpointer klass)
738 {
739 }
740
741 static void
read_only_map_tests_finalize(GObject * obj)742 read_only_map_tests_finalize (GObject * obj)
743 {
744 ReadOnlyMapTests * self;
745 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_READ_ONLY_MAP_TESTS, ReadOnlyMapTests);
746 _g_object_unref0 (self->test_map);
747 _g_object_unref0 (self->ro_map);
748 G_OBJECT_CLASS (read_only_map_tests_parent_class)->finalize (obj);
749 }
750
751 GType
read_only_map_tests_get_type(void)752 read_only_map_tests_get_type (void)
753 {
754 static volatile gsize read_only_map_tests_type_id__volatile = 0;
755 if (g_once_init_enter (&read_only_map_tests_type_id__volatile)) {
756 static const GTypeInfo g_define_type_info = { sizeof (ReadOnlyMapTestsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) read_only_map_tests_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ReadOnlyMapTests), 0, (GInstanceInitFunc) read_only_map_tests_instance_init, NULL };
757 GType read_only_map_tests_type_id;
758 read_only_map_tests_type_id = g_type_register_static (GEE_TYPE_TEST_CASE, "ReadOnlyMapTests", &g_define_type_info, 0);
759 g_once_init_leave (&read_only_map_tests_type_id__volatile, read_only_map_tests_type_id);
760 }
761 return read_only_map_tests_type_id__volatile;
762 }
763
764