diff options
author | Waldo Bastian <bastian@kde.org> | 2005-09-12 08:19:33 +0000 |
---|---|---|
committer | Waldo Bastian <bastian@kde.org> | 2005-09-12 08:19:33 +0000 |
commit | 8b34c2c538f182fe29af58f5153b9dd7cdbaf7fa (patch) | |
tree | fa5deb39e5b291180a67947d98607809a2a5ff59 /test | |
parent | 5e8110d79aa8c11ad76b3e77791e3e6daca0fa32 (diff) |
* dbus/dbus-marshal-validate.c, doc/dbus-specification.xml,
test/Makefile.am, test/test-names.c: allow hyphens in bus names.
Diffstat (limited to 'test')
-rw-r--r-- | test/.cvsignore | 1 | ||||
-rw-r--r-- | test/Makefile.am | 8 | ||||
-rw-r--r-- | test/test-names.c | 79 |
3 files changed, 87 insertions, 1 deletions
diff --git a/test/.cvsignore b/test/.cvsignore index 20de1a28..f7a65876 100644 --- a/test/.cvsignore +++ b/test/.cvsignore @@ -22,3 +22,4 @@ test-sleep-forever decode-gcov shell-test test-shell-service +test-names diff --git a/test/Makefile.am b/test/Makefile.am index e0a25aa4..5f904887 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -14,7 +14,7 @@ INCLUDES=-I$(top_srcdir) $(DBUS_TEST_CFLAGS) if DBUS_BUILD_TESTS ## break-loader removed for now -TEST_BINARIES=test-service test-shell-service shell-test spawn-test test-segfault test-exit test-sleep-forever +TEST_BINARIES=test-service test-names test-shell-service shell-test spawn-test test-segfault test-exit test-sleep-forever #enable stand alone make check test TESTS=shell-test @@ -36,6 +36,11 @@ test_service_SOURCES= \ test-utils.c \ test-utils.h +test_names_SOURCES= \ + test-names.c \ + test-utils.c \ + test-utils.h + ##break_loader_SOURCES= \ ## break-loader.c @@ -65,6 +70,7 @@ decode_gcov_SOURCES= \ TEST_LIBS=$(DBUS_TEST_LIBS) $(top_builddir)/dbus/libdbus-convenience.la test_service_LDADD=$(TEST_LIBS) +test_names_LDADD=$(TEST_LIBS) ## break_loader_LDADD= $(TEST_LIBS) test_shell_service_LDADD=$(TEST_LIBS) shell_test_LDADD=$(TEST_LIBS) diff --git a/test/test-names.c b/test/test-names.c new file mode 100644 index 00000000..b29648dc --- /dev/null +++ b/test/test-names.c @@ -0,0 +1,79 @@ + +#include "test-utils.h" + +static DBusLoop *loop; + +static void +die (const char *message) +{ + fprintf (stderr, "*** test-names: %s", message); + exit (1); +} + +static void +TestName(DBusConnection *connection, const char *name, int expectedSuccess) +{ + DBusError error; + dbus_error_init (&error); + + (void) dbus_bus_request_name (connection, name, 0, &error); + if (dbus_error_is_set (&error)) + { + if (expectedSuccess) + fprintf (stderr, "Error acquiring name '%s': %s\n", name, error.message); + else + fprintf (stdout, "Expected Error acquiring name '%s': %s\n", name, error.message); + _dbus_verbose ("*** Failed to acquire name '%s': %s\n", name, + error.message); + dbus_error_free (&error); + if (expectedSuccess) + exit (1); + } + else + { + if (!expectedSuccess) + fprintf (stderr, "Unexpected Success acquiring name '%s'\n", name); + else + fprintf (stdout, "Successfully acquired name '%s'\n", name); + _dbus_verbose ("*** Managed to acquire name '%s'\n", name); + if (!expectedSuccess) + exit (1); + } +} + +int +main (int argc, + char **argv) +{ + DBusError error; + int result; + DBusConnection *connection; + + dbus_error_init (&error); + connection = dbus_bus_get (DBUS_BUS_SESSION, &error); + if (connection == NULL) + { + fprintf (stderr, "*** Failed to open connection to system bus: %s\n", + error.message); + dbus_error_free (&error); + return 1; + } + + loop = _dbus_loop_new (); + if (loop == NULL) + die ("No memory\n"); + + if (!test_connection_setup (loop, connection)) + die ("No memory\n"); + + TestName(connection, "org.freedesktop.DBus.Test", TRUE); + TestName(connection, "org.freedesktop.DBus.Test-2", TRUE); + TestName(connection, "org.freedesktop.DBus.Test_2", TRUE); +#if 0 + TestName(connection, "Test_2", TRUE); +#endif + + _dbus_verbose ("*** Test service name exiting\n"); + + return 0; +} |