eobj_event_callback_del_full(obj, SIG_A_CHANGED, _a_changed_cb, (void *) 3);
fail_if(pd->cb_count != 3);
- eobj_event_callback_del_full(obj, SIG_A_CHANGED, _a_changed_cb, (void *) 4);
+
+ fail_if(eobj_event_callback_del_full(obj, SIG_A_CHANGED, _a_changed_cb, (void *) 12));
+ fail_if(pd->cb_count != 3);
+
+ fail_if(4 != (int) eobj_event_callback_del_full(obj, SIG_A_CHANGED, _a_changed_cb, (void *) 4));
fail_if(pd->cb_count != 2);
eobj_event_callback_del(obj, SIG_A_CHANGED, _a_changed_cb);
fail_if(pd->cb_count != 1);
+
+ fail_if(eobj_event_callback_del(obj, SIG_A_CHANGED, NULL));
+ fail_if(pd->cb_count != 1);
+ fail_if(eobj_event_callback_del_full(obj, SIG_A_CHANGED, NULL, 0));
+ fail_if(pd->cb_count != 1);
+
eobj_event_callback_del(obj, SIG_A_CHANGED, _a_changed_cb);
fail_if(pd->cb_count != 0);
+ fail_if(eobj_event_callback_del(obj, SIG_A_CHANGED, _a_changed_cb));
+ fail_if(pd->cb_count != 0);
+
eobj_unref(obj);
eobj_shutdown();
return 0;
}
END_TEST
+START_TEST(eobj_generic_data)
+{
+ eobj_init();
+ Eobj *obj = eobj_add(SIMPLE_CLASS, NULL);
+
+ eobj_generic_data_set(obj, "test1", (void *) 1);
+ fail_if(1 != (int) eobj_generic_data_get(obj, "test1"));
+ fail_if(1 != (int) eobj_generic_data_del(obj, "test1"));
+ fail_if(eobj_generic_data_del(obj, "test1"));
+
+ eobj_generic_data_set(obj, "test1", (void *) 1);
+ eobj_generic_data_set(obj, "test2", (void *) 2);
+ fail_if(2 != (int) eobj_generic_data_get(obj, "test2"));
+ fail_if(2 != (int) eobj_generic_data_del(obj, "test2"));
+ fail_if(eobj_generic_data_del(obj, "test2"));
+
+ fail_if(1 != (int) eobj_generic_data_get(obj, "test1"));
+ fail_if(1 != (int) eobj_generic_data_del(obj, "test1"));
+ fail_if(eobj_generic_data_del(obj, "test1"));
+
+ eobj_unref(obj);
+ eobj_shutdown();
+}
+END_TEST
+
void eobj_test_general(TCase *tc)
{
+ tcase_add_test(tc, eobj_generic_data);
tcase_add_test(tc, eobj_op_errors);
tcase_add_test(tc, eobj_simple);
}