#include #include "libindicator/indicator-object.h" void destroy_cb (gpointer data, GObject * object) { gboolean * bob = (gboolean *)data; *bob = TRUE; return; } void test_loader_refunref (void) { GObject * object = g_object_new(INDICATOR_OBJECT_TYPE, NULL); gboolean unreffed = FALSE; g_object_weak_ref(object, destroy_cb, &unreffed); g_object_unref(object); g_assert(unreffed == TRUE); return; } void test_loader_creation_deletion_suite (void) { g_test_add_func ("/libindicator/loader/ref_and_unref", test_loader_refunref); return; } int main (int argc, char ** argv) { g_type_init (); g_test_init (&argc, &argv, NULL); test_loader_creation_deletion_suite(); return g_test_run(); }