2 #include <opensync/opensync-error.h>
4 START_TEST (error_create
)
6 OSyncError
*error
= NULL
;
7 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "test%i", 1);
8 fail_unless(error
!= NULL
, NULL
);
9 fail_unless(osync_error_get_type(&error
) == OSYNC_ERROR_GENERIC
, NULL
);
10 fail_unless(!strcmp(osync_error_print(&error
), "test1"), NULL
);
11 fail_unless(osync_error_is_set(&error
), NULL
);
13 osync_error_unref(&error
);
14 fail_unless(error
== NULL
, NULL
);
18 START_TEST (error_create_null
)
20 osync_error_set(NULL
, OSYNC_ERROR_GENERIC
, "test%i", 1);
24 START_TEST (error_get_name_null
)
26 fail_unless(osync_error_get_name(NULL
) == NULL
, NULL
);
31 START_TEST (error_get_name_null2
)
33 OSyncError
*error
= NULL
;
34 fail_unless(osync_error_get_name(&error
) != NULL
, NULL
);
39 START_TEST (error_get_name
)
41 OSyncError
*error
= NULL
;
42 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "test");
43 fail_unless(osync_error_get_name(&error
) != NULL
, NULL
);
44 osync_error_unref(&error
);
48 START_TEST (error_free_null
)
50 osync_error_unref(NULL
);
55 START_TEST (error_free_null2
)
57 OSyncError
*error
= NULL
;
58 osync_error_unref(&error
);
63 START_TEST (error_free
)
65 OSyncError
*error
= NULL
;
66 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "test");
67 fail_unless(error
!= NULL
, NULL
);
68 osync_error_unref(&error
);
69 fail_unless(error
== NULL
, NULL
);
73 START_TEST (error_check_null
)
75 fail_unless(osync_error_is_set(NULL
) == FALSE
, NULL
);
80 START_TEST (error_check_null2
)
82 OSyncError
*error
= NULL
;
83 fail_unless(osync_error_is_set(&error
) == FALSE
, NULL
);
88 START_TEST (error_check
)
90 OSyncError
*error
= NULL
;
91 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "test");
92 fail_unless(osync_error_is_set(&error
) == TRUE
, NULL
);
93 osync_error_unref(&error
);
97 START_TEST (error_check2
)
99 OSyncError
*error
= NULL
;
100 osync_error_set(&error
, OSYNC_NO_ERROR
, NULL
);
101 fail_unless(osync_error_is_set(&error
) == FALSE
, NULL
);
105 START_TEST (error_stack_null
)
107 osync_error_stack(NULL
, NULL
);
112 START_TEST (error_stack_null2
)
114 OSyncError
*error
= NULL
;
115 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "test");
117 char *msg
= osync_error_print_stack(&error
);
118 fail_unless(msg
!= NULL
, NULL
);
121 osync_error_stack(&error
, NULL
);
122 osync_error_unref(&error
);
126 START_TEST (error_stack
)
128 OSyncError
*error
= NULL
;
129 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "test");
130 OSyncError
*error2
= NULL
;
131 osync_error_set(&error2
, OSYNC_ERROR_GENERIC
, "test2");
132 osync_error_stack(&error
, &error2
);
133 fail_unless(!strcmp(osync_error_print(&error
), "test"), NULL
);
134 OSyncError
*error3
= osync_error_get_child(&error
);
135 fail_unless(!strcmp(osync_error_print(&error3
), "test2"), NULL
);
136 error3
= osync_error_get_child(&error2
);
137 fail_unless(error3
== NULL
, NULL
);
139 osync_error_unref(&error2
);
140 osync_error_unref(&error
);
144 START_TEST (error_stack2
)
146 OSyncError
*error1
= NULL
;
147 osync_error_set(&error1
, OSYNC_ERROR_GENERIC
, "test1");
148 OSyncError
*error2
= NULL
;
149 osync_error_set(&error2
, OSYNC_ERROR_GENERIC
, "test2");
150 OSyncError
*error3
= NULL
;
151 osync_error_set(&error3
, OSYNC_ERROR_GENERIC
, "test3");
153 osync_error_stack(&error1
, &error2
);
154 osync_error_stack(&error2
, &error3
);
156 osync_error_unref(&error2
);
157 osync_error_unref(&error3
);
159 fail_unless(!strcmp(osync_error_print(&error1
), "test1"), NULL
);
160 OSyncError
*error
= osync_error_get_child(&error1
);
161 fail_unless(!strcmp(osync_error_print(&error
), "test2"), NULL
);
162 error
= osync_error_get_child(&error
);
163 fail_unless(!strcmp(osync_error_print(&error
), "test3"), NULL
);
165 char *msg
= osync_error_print_stack(&error1
);
166 fail_unless(msg
!= NULL
, NULL
);
169 osync_error_unref(&error1
);
173 START_TEST (error_set_null
)
175 osync_error_set(NULL
, OSYNC_NO_ERROR
, NULL
);
180 START_TEST (error_duplicate_null
)
182 OSyncError
*error
= NULL
;
183 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "asd");
184 osync_error_set_from_error(NULL
, &error
);
185 osync_error_unref(&error
);
190 START_TEST (error_duplicate
)
192 OSyncError
*error
= NULL
;
193 OSyncError
*error2
= NULL
;
194 osync_error_set(&error
, OSYNC_ERROR_GENERIC
, "asd");
195 osync_error_set_from_error(&error2
, &error
);
197 fail_unless(error2
!= NULL
, NULL
);
199 osync_error_unref(&error
);
200 osync_error_unref(&error2
);
204 OSYNC_TESTCASE_START("error")
205 OSYNC_TESTCASE_ADD(error_create
)
206 OSYNC_TESTCASE_ADD(error_create_null
)
207 OSYNC_TESTCASE_ADD(error_get_name_null
)
208 OSYNC_TESTCASE_ADD(error_get_name_null2
)
209 OSYNC_TESTCASE_ADD(error_get_name
)
210 OSYNC_TESTCASE_ADD(error_free_null
)
211 OSYNC_TESTCASE_ADD(error_free_null2
)
212 OSYNC_TESTCASE_ADD(error_free
)
213 OSYNC_TESTCASE_ADD(error_check_null
)
214 OSYNC_TESTCASE_ADD(error_check_null2
)
215 OSYNC_TESTCASE_ADD(error_check
)
216 OSYNC_TESTCASE_ADD(error_check2
)
217 OSYNC_TESTCASE_ADD(error_stack_null
)
218 OSYNC_TESTCASE_ADD(error_stack_null2
)
219 OSYNC_TESTCASE_ADD(error_stack
)
220 OSYNC_TESTCASE_ADD(error_stack2
)
221 OSYNC_TESTCASE_ADD(error_set_null
)
222 OSYNC_TESTCASE_ADD(error_duplicate_null
)
223 OSYNC_TESTCASE_ADD(error_duplicate
)