From c879c510dbef95deea70687d59c2013005bf946d Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Wed, 24 Feb 2010 14:19:01 +0000 Subject: unit tests for the indicator side added --- tests/Makefile.am | 23 +++++++++ tests/test-indicator-sound.c | 113 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 136 insertions(+) create mode 100644 tests/Makefile.am create mode 100644 tests/test-indicator-sound.c (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am new file mode 100644 index 0000000..05e1bd0 --- /dev/null +++ b/tests/Makefile.am @@ -0,0 +1,23 @@ + +check_PROGRAMS = \ + test-indicator-sound + +TESTS = +DISTCLEANFILES = $(TESTS) + +######################################### +## test-indicator-sound +######################################### +test_indicator_sound_SOURCES = \ + test-indicator-sound.c + +test_indicator_sound_CFLAGS = \ + $(APPLET_CFLAGS) \ + -Wall -Werror \ + -I$(srcdir) \ + -DBUILD_DIR="\"$(builddir)\"" + +test_indicator_sound_LDADD = \ + $(APPLET_LIBS) \ + $(INDICATORDIR)/libsoundmenu.la + diff --git a/tests/test-indicator-sound.c b/tests/test-indicator-sound.c new file mode 100644 index 0000000..81fc966 --- /dev/null +++ b/tests/test-indicator-sound.c @@ -0,0 +1,113 @@ +/* +Copyright 2010 Canonical Ltd. + +Authors: + Conor Curran + +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License version 3, as published +by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR +PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program. If not, see . +*/ + +/*#include */ +/*#include */ +/*#include */ +/*#include */ +/*#include */ +/*#include */ +/*#include */ + +/*#include */ +/*#include */ + +/*#include */ +/*#include */ +/*#include */ + +#include +#include "../src/indicator-sound.c" + + +void test_libindicator_sound_init() +{ + IndicatorObject * sound_menu = indicator_object_new_from_file("/home/ronoc/canonical/repos/branches/indicator-sound/tests-indicator-sound/indicator-sound/src/.libs/libsoundmenu.so"); + g_assert(sound_menu != NULL); + g_object_unref(G_OBJECT(sound_menu)); +} + +void test_libindicator_determine_state() +{ + IndicatorObject * sound_menu = indicator_object_new_from_file("/home/ronoc/canonical/repos/branches/indicator-sound/tests-indicator-sound/indicator-sound/src/.libs/libsoundmenu.so"); + get_icon(sound_menu); + + determine_state_from_volume(40); + g_assert(current_state == STATE_MEDIUM); + + determine_state_from_volume(0); + g_assert(current_state == STATE_ZERO); + + determine_state_from_volume(15); + g_assert(current_state == STATE_LOW); + + determine_state_from_volume(70); + g_assert(current_state == STATE_HIGH); + + g_object_unref(G_OBJECT(sound_menu)); +} + +void test_libindicator_image_names() +{ + prepare_state_machine(); + + gchar* muted_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_MUTED)); + g_assert(g_ascii_strncasecmp("audio-volume-muted-panel", muted_name, strlen("audio-volume-muted-panel")) == 0); + + gchar* zero_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_ZERO)); + g_assert(g_ascii_strncasecmp("audio-volume-low-zero-panel", zero_name, strlen("audio-volume-low-zero-panel")) == 0); + + gchar* low_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_LOW)); + g_assert(g_ascii_strncasecmp("audio-volume-low-panel", low_name, strlen("audio-volume-low-panel")) == 0); + + gchar* medium_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_MEDIUM)); + g_assert(g_ascii_strncasecmp("audio-volume-medium-panel", medium_name, strlen("audio-volume-medium-panel")) == 0); + + gchar* high_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_HIGH)); + g_assert(g_ascii_strncasecmp("audio-volume-high-panel", high_name, strlen("audio-volume-high-panel")) == 0); + + gchar* blocked_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_MUTED_WHILE_INPUT)); + g_assert(g_ascii_strncasecmp("audio-volume-muted-blocking-panel", blocked_name, strlen("audio-volume-muted-blocking-panel")) == 0); + + gchar* none_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_SINKS_NONE)); + g_assert(g_ascii_strncasecmp("audio-output-none-panel", none_name, strlen("audio-output-none-panel")) == 0); + + // tidy up + g_hash_table_destroy(volume_states); +} + + +void test_libindicator_mute_switching() +{ + +} + + +gint main (gint argc, gchar * argv[]) +{ + g_type_init(); + g_test_init(&argc, &argv, NULL); + + g_test_add_func("/indicator-sound/indicator-sound/init", test_libindicator_sound_init); + g_test_add_func("/indicator-sound/indicator-sound/state_machine", test_libindicator_determine_state); + g_test_add_func("/indicator-sound/indicator-sound/image_names", test_libindicator_image_names); + + return g_test_run (); +} + -- cgit v1.2.3 From a7952974571bf697b218cedacacd118e2e05e97e Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Thu, 25 Feb 2010 14:12:05 +0000 Subject: fixes --- tests/Makefile.am | 36 ++++++++++++++++++++++++++++++++++-- tests/run-xvfb.sh | 8 ++++++++ tests/test-indicator-sound.c | 19 ++----------------- 3 files changed, 44 insertions(+), 19 deletions(-) create mode 100644 tests/run-xvfb.sh (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index 05e1bd0..dadc1e4 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -10,14 +10,46 @@ DISTCLEANFILES = $(TESTS) ######################################### test_indicator_sound_SOURCES = \ test-indicator-sound.c - + test_indicator_sound_CFLAGS = \ $(APPLET_CFLAGS) \ -Wall -Werror \ -I$(srcdir) \ - -DBUILD_DIR="\"$(builddir)\"" + -DBUILD_DIR="\"$(INDICATORDIR)"\" test_indicator_sound_LDADD = \ $(APPLET_LIBS) \ $(INDICATORDIR)/libsoundmenu.la +#DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf + +#test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am +# @echo "#!/bin/sh" > test-indicator-sound-dbus +# @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus +# @chmod +x test-libappindicator-dbus + +#TESTS += test-libappindicator-dbus + +XVFB_RUN=". $(srcdir)/run-xvfb.sh" + +EXTRA_DIST = run-xvfb.sh + + +############################# +# Test stuff +############################# + +#XML_REPORT = loader-check-results.xml +#HTML_REPORT = loader-check-results.html + +#loader-tester: test-loader libsoundmenu.la Makefile +# @echo "#!/bin/bash" > loader-tester +# @echo $(XVFB_RUN) >> $@ +# @echo gtester -k --verbose -o=$(XML_REPORT) ./test-loader >> loader-tester +# @chmod +x loader-tester + +#TESTS += loader-tester +#DISTCLEANFILES += loader-tester + +#DISTCLEANFILES += $(XML_REPORT) $(HTML_REPORT) + diff --git a/tests/run-xvfb.sh b/tests/run-xvfb.sh new file mode 100644 index 0000000..63b6f0d --- /dev/null +++ b/tests/run-xvfb.sh @@ -0,0 +1,8 @@ +if [ "$DISPLAY" == "" ]; then +Xvfb -ac -noreset -screen 0 800x600x16 -help 2>/dev/null 1>&2 +XID=`for id in 101 102 103 104 105 106 107 197 199 211 223 227 293 307 308 309 310 311 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 4703 4721 4723 4729 4733 4751 9973 9974 9975 9976 9977 9978 9979 9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 9995 9996 9997 9998 9999 ; do test -e /tmp/.X$id-lock || { echo $id; exit 0; }; done; exit 1` +{ Xvfb -ac -noreset -screen 0 800x600x16 :$XID -screen 0 800x600x16 -nolisten tcp -auth /dev/null >/dev/null 2>&1 & trap "kill -15 $! " 0 HUP INT QUIT TRAP USR1 PIPE TERM ; } || { echo "Gtk+Tests:ERROR: Failed to start Xvfb environment for X11 target tests."; exit 1; } +DISPLAY=:$XID +export DISPLAY +echo Setting display: $DISPLAY +fi diff --git a/tests/test-indicator-sound.c b/tests/test-indicator-sound.c index 81fc966..0885bb5 100644 --- a/tests/test-indicator-sound.c +++ b/tests/test-indicator-sound.c @@ -17,35 +17,20 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -/*#include */ -/*#include */ -/*#include */ -/*#include */ -/*#include */ -/*#include */ -/*#include */ - -/*#include */ -/*#include */ - -/*#include */ -/*#include */ -/*#include */ - #include #include "../src/indicator-sound.c" void test_libindicator_sound_init() { - IndicatorObject * sound_menu = indicator_object_new_from_file("/home/ronoc/canonical/repos/branches/indicator-sound/tests-indicator-sound/indicator-sound/src/.libs/libsoundmenu.so"); + IndicatorObject * sound_menu = indicator_object_new_from_file(BUILD_DIR "/.libs/libsoundmenu.so"); g_assert(sound_menu != NULL); g_object_unref(G_OBJECT(sound_menu)); } void test_libindicator_determine_state() { - IndicatorObject * sound_menu = indicator_object_new_from_file("/home/ronoc/canonical/repos/branches/indicator-sound/tests-indicator-sound/indicator-sound/src/.libs/libsoundmenu.so"); + IndicatorObject * sound_menu = indicator_object_new_from_file(BUILD_DIR "/.libs/libsoundmenu.so"); get_icon(sound_menu); determine_state_from_volume(40); -- cgit v1.2.3 From 4cb7db538df7b4e69e49ab047f401b8ba480f224 Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Thu, 25 Feb 2010 14:43:34 +0000 Subject: path parsing fixed - tests are now portable --- tests/Makefile.am | 2 +- tests/test-indicator-sound.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index dadc1e4..4404333 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -15,7 +15,7 @@ test_indicator_sound_CFLAGS = \ $(APPLET_CFLAGS) \ -Wall -Werror \ -I$(srcdir) \ - -DBUILD_DIR="\"$(INDICATORDIR)"\" + -DTOP_BUILD_DIR="\"${abs_top_builddir}\"" test_indicator_sound_LDADD = \ $(APPLET_LIBS) \ diff --git a/tests/test-indicator-sound.c b/tests/test-indicator-sound.c index 0885bb5..0de09b7 100644 --- a/tests/test-indicator-sound.c +++ b/tests/test-indicator-sound.c @@ -23,14 +23,14 @@ with this program. If not, see . void test_libindicator_sound_init() { - IndicatorObject * sound_menu = indicator_object_new_from_file(BUILD_DIR "/.libs/libsoundmenu.so"); + IndicatorObject * sound_menu = indicator_object_new_from_file(TOP_BUILD_DIR "/src/.libs/libsoundmenu.so"); g_assert(sound_menu != NULL); g_object_unref(G_OBJECT(sound_menu)); } void test_libindicator_determine_state() { - IndicatorObject * sound_menu = indicator_object_new_from_file(BUILD_DIR "/.libs/libsoundmenu.so"); + IndicatorObject * sound_menu = indicator_object_new_from_file(TOP_BUILD_DIR "/src/.libs/libsoundmenu.so"); get_icon(sound_menu); determine_state_from_volume(40); -- cgit v1.2.3 From 6468402475d7bfced0ee905bdd56977cc2f4b7da Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Mon, 1 Mar 2010 21:54:03 +0000 Subject: new tests for dbus stuff --- tests/Makefile.am | 81 +++++++++++++++++------ tests/test-defines.h | 24 +++++++ tests/test-indicator-sound-dbus-client.c | 109 +++++++++++++++++++++++++++++++ tests/test-indicator-sound-dbus-server.c | 61 +++++++++++++++++ 4 files changed, 254 insertions(+), 21 deletions(-) create mode 100644 tests/test-defines.h create mode 100644 tests/test-indicator-sound-dbus-client.c create mode 100644 tests/test-indicator-sound-dbus-server.c (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index 4404333..7d061fb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,6 +1,8 @@ check_PROGRAMS = \ test-indicator-sound + test-indicator-sound-dbus-client \ + test-indicator-sound-dbus-server TESTS = DISTCLEANFILES = $(TESTS) @@ -21,35 +23,72 @@ test_indicator_sound_LDADD = \ $(APPLET_LIBS) \ $(INDICATORDIR)/libsoundmenu.la -#DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf +######################################### +## test-indicator-sound-dbus-client +######################################### + +test_indicator_sound_dbus_client_SOURCES = \ + test-defines.h \ + test-indicator-sound-dbus-client.c + +test_indicator_sound_dbus_client_CFLAGS = \ + $(SOUNDSERVICE_CFLAGS) \ + -Wall -Werror \ + -I$(srcdir) \ + -I$(SOUNDSERVICE_CFLAGS) + +test_indicator_sound_dbus_client_LDADD = \ + $(SOUNDSERVICE_LIBS) \ + $(INDICATORDIR)/libsoundmenu.la + +######################################### +## test-indicator-sound-dbus-server +######################################### +test_indicator_sound_dbus_server_SOURCES = \ + test-defines.h \ + test-indicator-sound-dbus-server.c + +test_indicator_sound_dbus_server_CFLAGS = \ + $(APPLET_CFLAGS) \ + -Wall -Werror \ + -I$(srcdir) + +test_libappindicator_dbus_server_LDADD = \ + $(SOUNDSERVICE_LIBS) \ + $(INDICATORDIR)/libsoundmenu.la + + +######################################### +## Actual tests +######################################### + +#XML_REPORT = indicator-sound-check-results.xml +#HTML_REPORT = indicator-sound-check-results.html + +#indicator-sound-tests: indicator-sound-tests-gtester Makefile.am +# @echo "#!/bin/sh" > $@ +# @echo $(DBUS_RUNNER) --task ./indicator-sound-tests-gtester >> $@ +# @chmod +x $@ -#test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am -# @echo "#!/bin/sh" > test-indicator-sound-dbus -# @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus -# @chmod +x test-libappindicator-dbus +indicator-sound-tests-gtester: test-indicator-sound Makefile.am + @echo "#!/bin/sh" > $@ + @echo gtester -k --verbose -o=$(XML_REPORT) ./test-indicator-sound >> $@ + @chmod +x $@ -#TESTS += test-libappindicator-dbus +TESTS += indicator-sound-tests -XVFB_RUN=". $(srcdir)/run-xvfb.sh" +DISTCLEANFILES += $(XML_REPORT) $(HTML_REPORT) indicator-sound-tests-gtester -EXTRA_DIST = run-xvfb.sh +DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf +test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am + @echo "#!/bin/sh" > test-indicator-sound-dbus + @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus + @chmod +x test-indicator-sound-dbus -############################# -# Test stuff -############################# +TESTS += test-indicator-sound-dbus -#XML_REPORT = loader-check-results.xml -#HTML_REPORT = loader-check-results.html -#loader-tester: test-loader libsoundmenu.la Makefile -# @echo "#!/bin/bash" > loader-tester -# @echo $(XVFB_RUN) >> $@ -# @echo gtester -k --verbose -o=$(XML_REPORT) ./test-loader >> loader-tester -# @chmod +x loader-tester -#TESTS += loader-tester -#DISTCLEANFILES += loader-tester -#DISTCLEANFILES += $(XML_REPORT) $(HTML_REPORT) diff --git a/tests/test-defines.h b/tests/test-defines.h new file mode 100644 index 0000000..68064fc --- /dev/null +++ b/tests/test-defines.h @@ -0,0 +1,24 @@ +/* +Testing defines to be shared between various tests. + +Copyright 2010 Canonical Ltd. + +Authors: + Conor Curran + Ted Gould + +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License version 3, as published +by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR +PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program. If not, see . +*/ + +#define TEST_MUTE FALSE + diff --git a/tests/test-indicator-sound-dbus-client.c b/tests/test-indicator-sound-dbus-client.c new file mode 100644 index 0000000..9d6f7ab --- /dev/null +++ b/tests/test-indicator-sound-dbus-client.c @@ -0,0 +1,109 @@ +/* +Tests for the libappindicator library that are over DBus. This is +the client side of those tests. + +Copyright 2010 Canonical Ltd. + +Authors: + Conor Curran + Ted Gould + +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License version 3, as published +by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR +PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program. If not, see . +*/ + + +#include +#include +#include "../src/dbus-shared-names.h" +/*#include "../src/indicator-sound.c"*/ +#include "test-defines.h" + +static GMainLoop * mainloop = NULL; +static gboolean passed = TRUE; + +static void +fetch_mute_cb (DBusGProxy * proxy, DBusGProxyCall * call, void * data) +{ + GError * error = NULL; + GValue value = {0}; + + if (!dbus_g_proxy_end_call(proxy, call, &error, G_TYPE_VALUE, &value, G_TYPE_INVALID)) { + g_warning("Getting mute failed: %s", error->message); + g_error_free(error); + passed = FALSE; + return; + } + + if (TEST_MUTE != g_value_get_boolean(&value))) { + g_debug("Mute vale Returned: FAILED"); + passed = FALSE; + } else { + g_debug("Property ID Returned: PASSED"); + } + return; +} + + +gboolean +kill_func (gpointer userdata) +{ + g_main_loop_quit(mainloop); + g_warning("Forced to Kill"); + passed = FALSE; + return FALSE; +} + +gint +main (gint argc, gchar * argv[]) +{ + g_type_init(); + + g_usleep(500000); + + GError * error = NULL; + DBusGConnection * session_bus = dbus_g_bus_get(DBUS_BUS_SESSION, &error); + if (error != NULL) { + g_error("Unable to get session bus: %s", error->message); + return 1; + } + + DBusGProxy * props = dbus_g_proxy_new_for_name_owner(session_bus, + INDICATOR_SOUND_DBUS_NAME, + INDICATOR_SOUND_SERVICE_DBUS_OBJECT, + INDICATOR_SOUND_SERVICE_DBUS_INTERFACE, + &error); + if (error != NULL) { + g_error("Unable to get property proxy: %s", error->message); + return 1; + } + + dbus_g_proxy_begin_call (props, + "GetSinkMute", + fetch_mute_cb, + NULL, NULL, + G_TYPE_INVALID); + + g_timeout_add_seconds(2, kill_func, NULL); + + mainloop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(mainloop); + + if (passed) { + g_debug("Quiting"); + return 0; + } else { + g_debug("Quiting as we're a failure"); + return 1; + } + return 0; +} diff --git a/tests/test-indicator-sound-dbus-server.c b/tests/test-indicator-sound-dbus-server.c new file mode 100644 index 0000000..c9ad61d --- /dev/null +++ b/tests/test-indicator-sound-dbus-server.c @@ -0,0 +1,61 @@ +/* +Tests for the libappindicator library that are over DBus. This is +the server side of those tests. + +Copyright 2009 Canonical Ltd. + +Authors: + Conor Curran + Ted Gould + +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License version 3, as published +by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR +PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program. If not, see . +*/ + + +#include +#include +#include +#include "../src/sound-service-dbus.h" +#include "test-defines.h" + +static GMainLoop * mainloop = NULL; + +gboolean +kill_func (gpointer userdata) +{ + g_main_loop_quit(mainloop); + return FALSE; +} + +gint +main (gint argc, gchar * argv[]) +{ + g_type_init(); + g_debug("DBus ID: %s", dbus_connection_get_server_id(dbus_g_connection_get_connection(dbus_g_bus_get(DBUS_BUS_SESSION, NULL)))); + + dbus_interface = g_object_new(SOUND_SERVICE_DBUS_TYPE, NULL); + + // Set the mute value + sound_service_dbus_update_sink_mute(dbus_interface, TEST_MUTE); + g_timeout_add_seconds(2, kill_func, NULL); + + // Run the loop + mainloop = g_main_loop_new(NULL, FALSE); + g_main_loop_run(mainloop); + + g_debug("Quiting"); + + return 0; +} + + -- cgit v1.2.3 From c49359cb645a839fed19b8217635303dae4f825e Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 1 Mar 2010 16:06:30 -0600 Subject: Removing linking to the loadable library and fixing a missing '\' --- tests/Makefile.am | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index 7d061fb..d4675df 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,6 +1,6 @@ check_PROGRAMS = \ - test-indicator-sound + test-indicator-sound \ test-indicator-sound-dbus-client \ test-indicator-sound-dbus-server @@ -20,8 +20,7 @@ test_indicator_sound_CFLAGS = \ -DTOP_BUILD_DIR="\"${abs_top_builddir}\"" test_indicator_sound_LDADD = \ - $(APPLET_LIBS) \ - $(INDICATORDIR)/libsoundmenu.la + $(APPLET_LIBS) ######################################### ## test-indicator-sound-dbus-client @@ -38,8 +37,7 @@ test_indicator_sound_dbus_client_CFLAGS = \ -I$(SOUNDSERVICE_CFLAGS) test_indicator_sound_dbus_client_LDADD = \ - $(SOUNDSERVICE_LIBS) \ - $(INDICATORDIR)/libsoundmenu.la + $(SOUNDSERVICE_LIBS) ######################################### ## test-indicator-sound-dbus-server @@ -53,9 +51,8 @@ test_indicator_sound_dbus_server_CFLAGS = \ -Wall -Werror \ -I$(srcdir) -test_libappindicator_dbus_server_LDADD = \ - $(SOUNDSERVICE_LIBS) \ - $(INDICATORDIR)/libsoundmenu.la +test_indicator_sound_dbus_server_LDADD = \ + $(SOUNDSERVICE_LIBS) ######################################### -- cgit v1.2.3 From 7a92d249547ff1783725850edb39a952e52ee8c9 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 1 Mar 2010 16:06:52 -0600 Subject: Removing including a C file and including some needed headers. --- tests/test-indicator-sound.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/test-indicator-sound.c b/tests/test-indicator-sound.c index 0de09b7..e103fa8 100644 --- a/tests/test-indicator-sound.c +++ b/tests/test-indicator-sound.c @@ -18,7 +18,8 @@ with this program. If not, see . */ #include -#include "../src/indicator-sound.c" +#include +#include void test_libindicator_sound_init() -- cgit v1.2.3 From be2b2e73044d5ba0c656431f0d19723af6b55946 Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Tue, 2 Mar 2010 10:20:25 +0000 Subject: refactored the indicator tests so as no c file needs to be included --- tests/Makefile.am | 41 +++++++++++++++++++++-------------------- tests/test-indicator-sound.c | 43 +++++++++++++++++++++---------------------- 2 files changed, 42 insertions(+), 42 deletions(-) (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index 285a26c..b20b070 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,8 +1,8 @@ check_PROGRAMS = \ test-indicator-sound \ - test-indicator-sound-dbus-client \ - test-indicator-sound-dbus-server + test-indicator-sound-dbus-client +# test-indicator-sound-dbus-server TESTS = DISTCLEANFILES = $(TESTS) @@ -44,20 +44,21 @@ test_indicator_sound_dbus_client_LDADD = \ ######################################### ## test-indicator-sound-dbus-server ######################################### -test_indicator_sound_dbus_server_SOURCES = \ - test-defines.h \ - test-indicator-sound-dbus-server.c - -test_indicator_sound_dbus_server_CFLAGS = \ - $(APPLET_CFLAGS) \ - -Wall -Werror \ - -I$(srcdir) \ - -I$(SOUNDSERVICE_CFLAGS) +#test_indicator_sound_dbus_server_SOURCES = \ +# test-defines.h -test_indicator_sound_dbus_server_LDADD = \ - $(SOUNDSERVICE_LIBS) \ - $(top_builddir)/src/libsoundmenu.la +#test_indicator_sound_dbus_server_CFLAGS = \ +# $(SOUNDSERVICE_CFLAGS) \ +# -Wall -Werror \ +# -I$(srcdir) \ +# -I$(SOUNDSERVICE_CFLAGS) +#test_indicator_sound_dbus_server_LDADD = \ +# $(SOUNDSERVICE_LIBS) \ +# $(top_builddir)/src/indicator_sound_service-sound-service.o \ +# $(top_builddir)/src/indicator_sound_service-pulse-manager.o \ +# $(top_builddir)/src/indicator_sound_service-slider-menu-item.o \ +# $(top_builddir)/src/indicator_sound_service-sound-service-dbus.o @@ -83,14 +84,14 @@ TESTS += indicator-sound-tests DISTCLEANFILES += $(XML_REPORT) $(HTML_REPORT) indicator-sound-tests-gtester -DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf +#DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf -test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am - @echo "#!/bin/sh" > test-indicator-sound-dbus - @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus - @chmod +x test-indicator-sound-dbus +#test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am +# @echo "#!/bin/sh" > test-indicator-sound-dbus +# @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus +# @chmod +x test-indicator-sound-dbus -TESTS += test-indicator-sound-dbus +#TESTS += test-indicator-sound-dbus diff --git a/tests/test-indicator-sound.c b/tests/test-indicator-sound.c index 5dad56c..eb68b17 100644 --- a/tests/test-indicator-sound.c +++ b/tests/test-indicator-sound.c @@ -57,34 +57,33 @@ void test_libindicator_determine_state() g_object_unref(G_OBJECT(sound_menu)); } -/*void test_libindicator_image_names()*/ -/*{*/ -/* prepare_state_machine();*/ - -/* gchar* muted_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_MUTED)); */ -/* g_assert(g_ascii_strncasecmp("audio-volume-muted-panel", muted_name, strlen("audio-volume-muted-panel")) == 0);*/ +void test_libindicator_image_names() +{ + prepare_state_machine(); -/* gchar* zero_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_ZERO)); */ -/* g_assert(g_ascii_strncasecmp("audio-volume-low-zero-panel", zero_name, strlen("audio-volume-low-zero-panel")) == 0);*/ + gchar* muted_name = get_state_image_name(STATE_MUTED); + g_assert(g_ascii_strncasecmp("audio-volume-muted-panel", muted_name, strlen("audio-volume-muted-panel")) == 0); -/* gchar* low_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_LOW)); */ -/* g_assert(g_ascii_strncasecmp("audio-volume-low-panel", low_name, strlen("audio-volume-low-panel")) == 0);*/ + gchar* zero_name = get_state_image_name(STATE_ZERO); + g_assert(g_ascii_strncasecmp("audio-volume-low-zero-panel", zero_name, strlen("audio-volume-low-zero-panel")) == 0); -/* gchar* medium_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_MEDIUM)); */ -/* g_assert(g_ascii_strncasecmp("audio-volume-medium-panel", medium_name, strlen("audio-volume-medium-panel")) == 0);*/ + gchar* low_name = get_state_image_name(STATE_LOW); + g_assert(g_ascii_strncasecmp("audio-volume-low-panel", low_name, strlen("audio-volume-low-panel")) == 0); -/* gchar* high_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_HIGH)); */ -/* g_assert(g_ascii_strncasecmp("audio-volume-high-panel", high_name, strlen("audio-volume-high-panel")) == 0);*/ + gchar* medium_name = get_state_image_name(STATE_MEDIUM); + g_assert(g_ascii_strncasecmp("audio-volume-medium-panel", medium_name, strlen("audio-volume-medium-panel")) == 0); -/* gchar* blocked_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_MUTED_WHILE_INPUT)); */ -/* g_assert(g_ascii_strncasecmp("audio-volume-muted-blocking-panel", blocked_name, strlen("audio-volume-muted-blocking-panel")) == 0);*/ + gchar* high_name = get_state_image_name(STATE_HIGH); + g_assert(g_ascii_strncasecmp("audio-volume-high-panel", high_name, strlen("audio-volume-high-panel")) == 0); -/* gchar* none_name = g_hash_table_lookup(volume_states, GINT_TO_POINTER(STATE_SINKS_NONE)); */ -/* g_assert(g_ascii_strncasecmp("audio-output-none-panel", none_name, strlen("audio-output-none-panel")) == 0);*/ + gchar* blocked_name = get_state_image_name(STATE_MUTED_WHILE_INPUT); + g_assert(g_ascii_strncasecmp("audio-volume-muted-blocking-panel", blocked_name, strlen("audio-volume-muted-blocking-panel")) == 0); -/* // tidy up*/ -/* g_hash_table_destroy(volume_states);*/ -/*}*/ + gchar* none_name = get_state_image_name(STATE_SINKS_NONE); + g_assert(g_ascii_strncasecmp("audio-output-none-panel", none_name, strlen("audio-output-none-panel")) == 0); + + tidy_up_hash(); +} @@ -95,7 +94,7 @@ gint main (gint argc, gchar * argv[]) g_test_add_func("/indicator-sound/indicator-sound/init", test_libindicator_sound_init); g_test_add_func("/indicator-sound/indicator-sound/state_machine", test_libindicator_determine_state); - //g_test_add_func("/indicator-sound/indicator-sound/image_names", test_libindicator_image_names); + g_test_add_func("/indicator-sound/indicator-sound/image_names", test_libindicator_image_names); return g_test_run (); } -- cgit v1.2.3 From 4bde209ef0f8ad381d70b2ade7eb3cf834eed074 Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Tue, 2 Mar 2010 19:36:53 +0000 Subject: one big refactor --- tests/Makefile.am | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index b20b070..ad985f4 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -11,7 +11,8 @@ DISTCLEANFILES = $(TESTS) ## test-indicator-sound ######################################### test_indicator_sound_SOURCES = \ - test-indicator-sound.c + test-indicator-sound.c \ + $(top_builddir)/src/indicator-sound.c test_indicator_sound_CFLAGS = \ $(APPLET_CFLAGS) \ @@ -20,8 +21,7 @@ test_indicator_sound_CFLAGS = \ -DTOP_BUILD_DIR="\"${abs_top_builddir}\"" test_indicator_sound_LDADD = \ - $(APPLET_LIBS) \ - $(top_builddir)/src/libsoundmenu_la-indicator-sound.o + $(APPLET_LIBS) ######################################### -- cgit v1.2.3 From 259f58ec21be89f22f478243f4c8acf9a44231f9 Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Wed, 3 Mar 2010 15:05:08 +0000 Subject: tests compiling --- tests/Makefile.am | 70 +++++++++++++++----------------- tests/test-indicator-sound-dbus-client.c | 9 ++-- 2 files changed, 39 insertions(+), 40 deletions(-) (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index ad985f4..a0b990b 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,8 +1,8 @@ check_PROGRAMS = \ test-indicator-sound \ - test-indicator-sound-dbus-client -# test-indicator-sound-dbus-server + test-indicator-sound-dbus-client \ + test-indicator-sound-dbus-server TESTS = DISTCLEANFILES = $(TESTS) @@ -27,53 +27,49 @@ test_indicator_sound_LDADD = \ ######################################### ## test-indicator-sound-dbus-client ######################################### - test_indicator_sound_dbus_client_SOURCES = \ test-defines.h \ - test-indicator-sound-dbus-client.c + test-indicator-sound-dbus-client.c test_indicator_sound_dbus_client_CFLAGS = \ $(SOUNDSERVICE_CFLAGS) \ -Wall -Werror \ - -I$(srcdir) \ - -I$(SOUNDSERVICE_CFLAGS) + -I$(srcdir) test_indicator_sound_dbus_client_LDADD = \ $(SOUNDSERVICE_LIBS) -######################################### -## test-indicator-sound-dbus-server -######################################### -#test_indicator_sound_dbus_server_SOURCES = \ -# test-defines.h - -#test_indicator_sound_dbus_server_CFLAGS = \ -# $(SOUNDSERVICE_CFLAGS) \ -# -Wall -Werror \ -# -I$(srcdir) \ -# -I$(SOUNDSERVICE_CFLAGS) - -#test_indicator_sound_dbus_server_LDADD = \ -# $(SOUNDSERVICE_LIBS) \ -# $(top_builddir)/src/indicator_sound_service-sound-service.o \ -# $(top_builddir)/src/indicator_sound_service-pulse-manager.o \ -# $(top_builddir)/src/indicator_sound_service-slider-menu-item.o \ -# $(top_builddir)/src/indicator_sound_service-sound-service-dbus.o - +######################################## +# test-indicator-sound-dbus-server +######################################## +test_indicator_sound_dbus_server_SOURCES = \ + test-defines.h \ + test-indicator-sound-dbus-server.c \ + $(top_builddir)/src/sound-service-dbus.c \ + $(top_builddir)/src/pulse-manager.c \ + $(top_builddir)/src/slider-menu-item.c \ + $(top_builddir)/src/dbus-menu-manager.c + +test_indicator_sound_dbus_server_CFLAGS = \ + $(SOUNDSERVICE_CFLAGS) \ + -Wall -Werror \ + -I$(srcdir) +test_indicator_sound_dbus_server_LDADD = \ + $(SOUNDSERVICE_LIBS) ######################################### ## Actual tests ######################################### -#XML_REPORT = indicator-sound-check-results.xml -#HTML_REPORT = indicator-sound-check-results.html +XML_REPORT = indicator-sound-check-results.xml +HTML_REPORT = indicator-sound-check-results.html -#indicator-sound-tests: indicator-sound-tests-gtester Makefile.am -# @echo "#!/bin/sh" > $@ -# @echo $(DBUS_RUNNER) --task ./indicator-sound-tests-gtester >> $@ -# @chmod +x $@ +indicator-sound-tests: indicator-sound-tests-gtester Makefile.am + @echo "#!/bin/sh" > $@ + @echo $(DBUS_RUNNER) --task ./indicator-sound-tests-gtester >> $@ + @chmod +x $@ indicator-sound-tests-gtester: test-indicator-sound Makefile.am @echo "#!/bin/sh" > $@ @@ -84,14 +80,14 @@ TESTS += indicator-sound-tests DISTCLEANFILES += $(XML_REPORT) $(HTML_REPORT) indicator-sound-tests-gtester -#DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf +DBUS_RUNNER=dbus-test-runner --dbus-config /usr/share/dbus-test-runner/session.conf -#test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am -# @echo "#!/bin/sh" > test-indicator-sound-dbus -# @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus -# @chmod +x test-indicator-sound-dbus +test-indicator-sound-dbus: test-indicator-sound-dbus-client test-indicator-sound-dbus-server Makefile.am + @echo "#!/bin/sh" > test-indicator-sound-dbus + @echo $(DBUS_RUNNER) --task ./test-indicator-sound-dbus-client --task-name Client --task ./test-indicator-sound-dbus-server --task-name Server --ignore-return >> test-indicator-sound-dbus + @chmod +x test-indicator-sound-dbus -#TESTS += test-indicator-sound-dbus +TESTS += test-indicator-sound-dbus diff --git a/tests/test-indicator-sound-dbus-client.c b/tests/test-indicator-sound-dbus-client.c index dc36ae3..08ce93e 100644 --- a/tests/test-indicator-sound-dbus-client.c +++ b/tests/test-indicator-sound-dbus-client.c @@ -25,7 +25,6 @@ with this program. If not, see . #include #include #include "../src/dbus-shared-names.h" -/*#include "../src/indicator-sound.c"*/ #include "test-defines.h" static GMainLoop * mainloop = NULL; @@ -78,10 +77,14 @@ main (gint argc, gchar * argv[]) } DBusGProxy * props = dbus_g_proxy_new_for_name_owner(session_bus, - INDICATOR_SOUND_DBUS_NAME, + INDICATOR_SOUND_DBUS_NAME, INDICATOR_SOUND_SERVICE_DBUS_OBJECT, INDICATOR_SOUND_SERVICE_DBUS_INTERFACE, - &error); + &error); +/* ":1.0",*/ +/* "/need/a/path",*/ +/* DBUS_INTERFACE_PROPERTIES,*/ +/* &error);*/ if (error != NULL) { g_error("Unable to get property proxy: %s", error->message); return 1; -- cgit v1.2.3