diff options
Diffstat (limited to 'libindicate/tests')
-rw-r--r-- | libindicate/tests/Makefile.am | 14 | ||||
-rw-r--r-- | libindicate/tests/listen-and-print.c | 51 |
2 files changed, 64 insertions, 1 deletions
diff --git a/libindicate/tests/Makefile.am b/libindicate/tests/Makefile.am index 814a50b..208da5b 100644 --- a/libindicate/tests/Makefile.am +++ b/libindicate/tests/Makefile.am @@ -1,7 +1,8 @@ noinst_PROGRAMS = \ indicate-and-crash \ - indicate-alot + indicate-alot \ + listen-and-print indicate_and_crash_SOURCES = \ indicate-and-crash.c @@ -24,3 +25,14 @@ indicate_alot_CFLAGS = \ indicate_alot_LDADD = \ ../libindicate.la \ $(LIBINDICATE_LIBS) + +listen_and_print_SOURCES = \ + listen-and-print.c + +listen_and_print_CFLAGS = \ + -I $(srcdir)/../.. \ + $(LIBINDICATE_CFLAGS) + +listen_and_print_LDADD = \ + ../libindicate.la \ + $(LIBINDICATE_LIBS) diff --git a/libindicate/tests/listen-and-print.c b/libindicate/tests/listen-and-print.c new file mode 100644 index 0000000..9ad2cc8 --- /dev/null +++ b/libindicate/tests/listen-and-print.c @@ -0,0 +1,51 @@ + +#include <glib.h> +#include "libindicate/listener.h" + +static void +indicator_added (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * type, gpointer data) +{ + g_debug("Indicator Added: %s %d %s", (gchar *)server, (guint)indicator, type); +} + +static void +indicator_removed (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * type, gpointer data) +{ + g_debug("Indicator Removed: %s %d %s", (gchar *)server, (guint)indicator, type); +} + +static void +indicator_modified (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * type, gchar * property, gpointer data) +{ + g_debug("Indicator Modified: %s %d %s %s", (gchar *)server, (guint)indicator, type, property); +} + +static void +server_added (IndicateListener * listener, IndicateListenerServer * server, gpointer data) +{ + g_debug("Indicator Server Added: %s", (gchar *)server); +} + +static void +server_removed (IndicateListener * listener, IndicateListenerServer * server, gpointer data) +{ + g_debug("Indicator Server Removed: %s", (gchar *)server); +} + +int +main (int argc, char ** argv) +{ + g_type_init(); + + IndicateListener * listener = indicate_listener_new(); + + g_signal_connect(listener, "indicator-added", G_CALLBACK(indicator_added), NULL); + g_signal_connect(listener, "indicator-removed", G_CALLBACK(indicator_removed), NULL); + g_signal_connect(listener, "indicator-modified", G_CALLBACK(indicator_modified), NULL); + g_signal_connect(listener, "server-added", G_CALLBACK(server_added), NULL); + g_signal_connect(listener, "server-removed", G_CALLBACK(server_removed), NULL); + + g_main_loop_run(g_main_loop_new(NULL, FALSE)); + + return 0; +} |