11 static void test_marshal(void)
16 list = tcore_util_marshal_create ();
20 tcore_util_marshal_add_data (list, "key1", &value_int, TCORE_UTIL_MARSHAL_DATA_INT_TYPE);
21 g_assert(tcore_util_marshal_get_int (list, "key1") == value_int);
24 tcore_util_marshal_add_data (list, "key2", &value_int, TCORE_UTIL_MARSHAL_DATA_INT_TYPE);
25 g_assert(tcore_util_marshal_get_int (list, "key2") == value_int);
27 tcore_util_marshal_destory (list);
30 static void test_marshal_serialize(void)
40 list = tcore_util_marshal_create ();
44 tcore_util_marshal_add_data (list, "key1", &value_int, TCORE_UTIL_MARSHAL_DATA_INT_TYPE);
45 g_assert(tcore_util_marshal_get_int (list, "key1") == value_int);
48 tcore_util_marshal_add_data (list, "key2", &value_int, TCORE_UTIL_MARSHAL_DATA_INT_TYPE);
49 g_assert(tcore_util_marshal_get_int (list, "key2") == value_int);
51 item = tcore_util_marshal_create ();
53 tcore_util_marshal_add_data (list, "key_object", item, TCORE_UTIL_MARSHAL_DATA_OBJECT_TYPE);
55 for (i = 0; i < 3; i++) {
56 item = tcore_util_marshal_create ();
60 snprintf (buf, 255, "sub-%d", i);
61 tcore_util_marshal_add_data (item, buf, &value_int, TCORE_UTIL_MARSHAL_DATA_INT_TYPE);
62 g_assert(tcore_util_marshal_get_int (item, buf) == value_int);
64 tcore_util_marshal_add_data (list, buf, item, TCORE_UTIL_MARSHAL_DATA_OBJECT_TYPE);
67 serialized = tcore_util_marshal_serialize (list);
68 g_assert (serialized);
69 tcore_util_marshal_destory (list);
71 tmp = tcore_util_marshal_deserialize_string (serialized);
76 g_assert(tcore_util_marshal_get_int (tmp, "key1") == 1);
77 g_assert(tcore_util_marshal_get_int (tmp, "key2") == 2);
79 tcore_util_marshal_destory (tmp);
82 int main(int argc, char **argv)
84 g_test_init(&argc, &argv, NULL);
88 g_test_add_func("/util/marshal", test_marshal);
89 g_test_add_func("/util/marshal_serialize", test_marshal_serialize);