1 /* testset.c generated by valac 0.19.0.4-d6d4, the Vala compiler
2 * generated from testset.vala, do not modify */
3
4 /* testset.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.h>
30 #include <glib-object.h>
31 #include <gee.h>
32 #include <stdlib.h>
33 #include <string.h>
34
35
36 #define GEE_TYPE_TEST_CASE (gee_test_case_get_type ())
37 #define GEE_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TEST_CASE, GeeTestCase))
38 #define GEE_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TEST_CASE, GeeTestCaseClass))
39 #define GEE_IS_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TEST_CASE))
40 #define GEE_IS_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TEST_CASE))
41 #define GEE_TEST_CASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TEST_CASE, GeeTestCaseClass))
42
43 typedef struct _GeeTestCase GeeTestCase;
44 typedef struct _GeeTestCaseClass GeeTestCaseClass;
45 typedef struct _GeeTestCasePrivate GeeTestCasePrivate;
46
47 #define TYPE_COLLECTION_TESTS (collection_tests_get_type ())
48 #define COLLECTION_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_COLLECTION_TESTS, CollectionTests))
49 #define COLLECTION_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_COLLECTION_TESTS, CollectionTestsClass))
50 #define IS_COLLECTION_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_COLLECTION_TESTS))
51 #define IS_COLLECTION_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_COLLECTION_TESTS))
52 #define COLLECTION_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_COLLECTION_TESTS, CollectionTestsClass))
53
54 typedef struct _CollectionTests CollectionTests;
55 typedef struct _CollectionTestsClass CollectionTestsClass;
56 typedef struct _CollectionTestsPrivate CollectionTestsPrivate;
57
58 #define TYPE_SET_TESTS (set_tests_get_type ())
59 #define SET_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SET_TESTS, SetTests))
60 #define SET_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SET_TESTS, SetTestsClass))
61 #define IS_SET_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SET_TESTS))
62 #define IS_SET_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SET_TESTS))
63 #define SET_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SET_TESTS, SetTestsClass))
64
65 typedef struct _SetTests SetTests;
66 typedef struct _SetTestsClass SetTestsClass;
67 typedef struct _SetTestsPrivate SetTestsPrivate;
68 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
69 #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
70
71 struct _GeeTestCase {
72 GObject parent_instance;
73 GeeTestCasePrivate * priv;
74 };
75
76 struct _GeeTestCaseClass {
77 GObjectClass parent_class;
78 void (*set_up) (GeeTestCase* self);
79 void (*tear_down) (GeeTestCase* self);
80 };
81
82 struct _CollectionTests {
83 GeeTestCase parent_instance;
84 CollectionTestsPrivate * priv;
85 GeeCollection* test_collection;
86 };
87
88 struct _CollectionTestsClass {
89 GeeTestCaseClass parent_class;
90 };
91
92 struct _SetTests {
93 CollectionTests parent_instance;
94 SetTestsPrivate * priv;
95 };
96
97 struct _SetTestsClass {
98 CollectionTestsClass parent_class;
99 void (*test_duplicates_are_ignored) (SetTests* self);
100 };
101
102 typedef void (*GeeTestCaseTestMethod) (void* user_data);
103
104 static gpointer set_tests_parent_class = NULL;
105
106 GType gee_test_case_get_type (void) G_GNUC_CONST;
107 GType collection_tests_get_type (void) G_GNUC_CONST;
108 GType set_tests_get_type (void) G_GNUC_CONST;
109 enum {
110 SET_TESTS_DUMMY_PROPERTY
111 };
112 SetTests* set_tests_construct (GType object_type, const gchar* name);
113 CollectionTests* collection_tests_construct (GType object_type, const gchar* name);
114 void gee_test_case_add_test (GeeTestCase* self, const gchar* name, GeeTestCaseTestMethod test, void* test_target);
115 void set_tests_test_duplicates_are_ignored (SetTests* self);
116 static void _set_tests_test_duplicates_are_ignored_gee_test_case_test_method (gpointer self);
117 static void set_tests_real_test_duplicates_are_ignored (SetTests* self);
118
119
_set_tests_test_duplicates_are_ignored_gee_test_case_test_method(gpointer self)120 static void _set_tests_test_duplicates_are_ignored_gee_test_case_test_method (gpointer self) {
121 set_tests_test_duplicates_are_ignored (self);
122 }
123
124
set_tests_construct(GType object_type,const gchar * name)125 SetTests* set_tests_construct (GType object_type, const gchar* name) {
126 SetTests * self = NULL;
127 const gchar* _tmp0_;
128 g_return_val_if_fail (name != NULL, NULL);
129 _tmp0_ = name;
130 self = (SetTests*) collection_tests_construct (object_type, _tmp0_);
131 gee_test_case_add_test ((GeeTestCase*) self, "[Set] duplicates are ignored", _set_tests_test_duplicates_are_ignored_gee_test_case_test_method, self);
132 return self;
133 }
134
135
_g_object_ref0(gpointer self)136 static gpointer _g_object_ref0 (gpointer self) {
137 return self ? g_object_ref (self) : NULL;
138 }
139
140
set_tests_real_test_duplicates_are_ignored(SetTests * self)141 static void set_tests_real_test_duplicates_are_ignored (SetTests* self) {
142 GeeCollection* _tmp0_;
143 GeeSet* _tmp1_;
144 GeeSet* test_set;
145 gboolean _tmp2_ = FALSE;
146 gboolean _tmp3_ = FALSE;
147 gint _tmp4_;
148 gint _tmp5_;
149 gboolean _tmp6_ = FALSE;
150 gboolean _tmp7_ = FALSE;
151 gint _tmp8_;
152 gint _tmp9_;
153 gboolean _tmp10_ = FALSE;
154 gboolean _tmp11_ = FALSE;
155 gint _tmp12_;
156 gint _tmp13_;
157 gboolean _tmp14_ = FALSE;
158 gboolean _tmp15_ = FALSE;
159 gint _tmp16_;
160 gint _tmp17_;
161 _tmp0_ = ((CollectionTests*) self)->test_collection;
162 _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SET) ? ((GeeSet*) _tmp0_) : NULL);
163 test_set = _tmp1_;
164 _vala_assert (test_set != NULL, "test_set != null");
165 _tmp2_ = gee_collection_add ((GeeCollection*) test_set, "one");
166 _vala_assert (_tmp2_, "test_set.add (\"one\")");
167 _tmp3_ = gee_collection_contains ((GeeCollection*) test_set, "one");
168 _vala_assert (_tmp3_, "test_set.contains (\"one\")");
169 _tmp4_ = gee_collection_get_size ((GeeCollection*) test_set);
170 _tmp5_ = _tmp4_;
171 _vala_assert (_tmp5_ == 1, "test_set.size == 1");
172 _tmp6_ = gee_collection_add ((GeeCollection*) test_set, "one");
173 _vala_assert (!_tmp6_, "! test_set.add (\"one\")");
174 _tmp7_ = gee_collection_contains ((GeeCollection*) test_set, "one");
175 _vala_assert (_tmp7_, "test_set.contains (\"one\")");
176 _tmp8_ = gee_collection_get_size ((GeeCollection*) test_set);
177 _tmp9_ = _tmp8_;
178 _vala_assert (_tmp9_ == 1, "test_set.size == 1");
179 _tmp10_ = gee_collection_remove ((GeeCollection*) test_set, "one");
180 _vala_assert (_tmp10_, "test_set.remove (\"one\")");
181 _tmp11_ = gee_collection_contains ((GeeCollection*) test_set, "one");
182 _vala_assert (!_tmp11_, "! test_set.contains (\"one\")");
183 _tmp12_ = gee_collection_get_size ((GeeCollection*) test_set);
184 _tmp13_ = _tmp12_;
185 _vala_assert (_tmp13_ == 0, "test_set.size == 0");
186 _tmp14_ = gee_collection_remove ((GeeCollection*) test_set, "one");
187 _vala_assert (!_tmp14_, "! test_set.remove (\"one\")");
188 _tmp15_ = gee_collection_contains ((GeeCollection*) test_set, "one");
189 _vala_assert (!_tmp15_, "! test_set.contains (\"one\")");
190 _tmp16_ = gee_collection_get_size ((GeeCollection*) test_set);
191 _tmp17_ = _tmp16_;
192 _vala_assert (_tmp17_ == 0, "test_set.size == 0");
193 _g_object_unref0 (test_set);
194 }
195
196
set_tests_test_duplicates_are_ignored(SetTests * self)197 void set_tests_test_duplicates_are_ignored (SetTests* self) {
198 g_return_if_fail (self != NULL);
199 SET_TESTS_GET_CLASS (self)->test_duplicates_are_ignored (self);
200 }
201
202
set_tests_class_init(SetTestsClass * klass)203 static void set_tests_class_init (SetTestsClass * klass) {
204 set_tests_parent_class = g_type_class_peek_parent (klass);
205 SET_TESTS_CLASS (klass)->test_duplicates_are_ignored = set_tests_real_test_duplicates_are_ignored;
206 }
207
208
set_tests_instance_init(SetTests * self)209 static void set_tests_instance_init (SetTests * self) {
210 }
211
212
set_tests_get_type(void)213 GType set_tests_get_type (void) {
214 static volatile gsize set_tests_type_id__volatile = 0;
215 if (g_once_init_enter (&set_tests_type_id__volatile)) {
216 static const GTypeInfo g_define_type_info = { sizeof (SetTestsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) set_tests_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SetTests), 0, (GInstanceInitFunc) set_tests_instance_init, NULL };
217 GType set_tests_type_id;
218 set_tests_type_id = g_type_register_static (TYPE_COLLECTION_TESTS, "SetTests", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
219 g_once_init_leave (&set_tests_type_id__volatile, set_tests_type_id);
220 }
221 return set_tests_type_id__volatile;
222 }
223
224
225
226