diff options
author | Ted Gould <ted@canonical.com> | 2009-04-20 12:36:07 -0500 |
---|---|---|
committer | Ted Gould <ted@canonical.com> | 2009-04-20 12:36:07 -0500 |
commit | 38c6ce2a36d6416016f64e5963deee29bc02f8b3 (patch) | |
tree | a0a91d4bc623b5d23713efcad65518ee2bf4beb1 /tests/test-interests-server.c | |
parent | 443c83ab353b818227270aa63f655fb2cbdbeba7 (diff) | |
download | libayatana-indicator-38c6ce2a36d6416016f64e5963deee29bc02f8b3.tar.gz libayatana-indicator-38c6ce2a36d6416016f64e5963deee29bc02f8b3.tar.bz2 libayatana-indicator-38c6ce2a36d6416016f64e5963deee29bc02f8b3.zip |
Adding an interests test
Diffstat (limited to 'tests/test-interests-server.c')
-rw-r--r-- | tests/test-interests-server.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/test-interests-server.c b/tests/test-interests-server.c new file mode 100644 index 0000000..82cab3c --- /dev/null +++ b/tests/test-interests-server.c @@ -0,0 +1,45 @@ + +#include <glib.h> +#include "libindicate/listener.h" + +static gboolean passed = TRUE; +static GMainLoop * mainloop = NULL; + +static void +server_added (IndicateListener * listener, IndicateListenerServer * server, gchar * type, gpointer data) +{ + g_debug("Indicator Server Added: %s %s", INDICATE_LISTENER_SERVER_DBUS_NAME(server), type); + + guint i; + for (i = INDICATE_INTEREST_NONE; i < INDICATE_INTEREST_LAST; i++) { + g_debug("Indicating Interests: %d", i); + indicate_listener_server_show_interest(listener, server, i); + } + + return; +} + +static gboolean +failed_cb (gpointer data) +{ + g_debug("Done indicatating interest"); + g_main_loop_quit(mainloop); + return FALSE; +} + +int +main (int argc, char * argv) +{ + g_type_init(); + + IndicateListener * listener = indicate_listener_ref_default(); + + g_signal_connect(listener, INDICATE_LISTENER_SIGNAL_SERVER_ADDED, G_CALLBACK(server_added), NULL); + + g_timeout_add_seconds(2, failed_cb, NULL); + + mainloop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(mainloop); + + return !passed; +} |