From: Simon McVittie Date: Mon, 4 Jun 2018 15:27:49 +0000 (+0100) Subject: test: Test the same things with unix: that we do with tcp: X-Git-Tag: dbus-1.13.6~43 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cb7dd5bfccb2882d0e9951c41040ff6a97bb827d;p=thirdparty%2Fdbus.git test: Test the same things with unix: that we do with tcp: Minimal autobuilder environments don't always have working TCP, so we may need to skip TCP tests. Make sure we test the equivalent code paths via Unix sockets in those environments. One notable exception is test/fdpass.c, which uses TCP as a transport that is known not to be able to carry Unix fds; this needs to continue to use TCP. Signed-off-by: Simon McVittie Reviewed-by: Philip Withnall Bug: https://bugs.freedesktop.org/show_bug.cgi?id=106812 --- diff --git a/test/corrupt.c b/test/corrupt.c index d6f850213..a2fad64d5 100644 --- a/test/corrupt.c +++ b/test/corrupt.c @@ -395,5 +395,10 @@ main (int argc, g_test_add ("/corrupt/byte-order/tcp", Fixture, "tcp:host=127.0.0.1", setup, test_byte_order, teardown); +#ifdef DBUS_UNIX + g_test_add ("/corrupt/byte-order/unix", Fixture, "unix:tmpdir=/tmp", setup, + test_byte_order, teardown); +#endif + return g_test_run (); } diff --git a/test/internals/refs.c b/test/internals/refs.c index b749acc98..da2ef7255 100644 --- a/test/internals/refs.c +++ b/test/internals/refs.c @@ -223,7 +223,12 @@ setup (Fixture *f, dbus_error_init (&f->e); +#ifdef DBUS_UNIX + f->server = dbus_server_listen ("unix:tmpdir=/tmp", &f->e); +#else f->server = dbus_server_listen ("tcp:host=127.0.0.1", &f->e); +#endif + assert_no_error (&f->e); g_assert (f->server != NULL); diff --git a/test/internals/server-oom.c b/test/internals/server-oom.c index 84f22b8f6..f9f0a8700 100644 --- a/test/internals/server-oom.c +++ b/test/internals/server-oom.c @@ -125,6 +125,9 @@ main (int argc, add_oom_test ("/server/new-nonce-tcp", test_new_server, "nonce-tcp:host=localhost,bind=localhost"); add_oom_test ("/server/new-tcp-star", test_new_server, "tcp:host=localhost,bind=*"); add_oom_test ("/server/new-tcp-v4", test_new_server, "tcp:host=localhost,bind=localhost,family=ipv4"); +#ifdef DBUS_UNIX + add_oom_test ("/server/unix", test_new_server, "unix:tmpdir=/tmp"); +#endif ret = g_test_run (); diff --git a/test/loopback.c b/test/loopback.c index 6a1dbee70..9702fb33a 100644 --- a/test/loopback.c +++ b/test/loopback.c @@ -467,6 +467,9 @@ main (int argc, g_test_add ("/message/nonce-tcp", Fixture, "nonce-tcp:host=127.0.0.1", setup, test_message, teardown); + g_test_add ("/message/bad-guid/tcp", Fixture, "tcp:host=127.0.0.1", setup, + test_bad_guid, teardown); + #ifdef DBUS_UNIX g_test_add ("/connect/unix/tmpdir", Fixture, "unix:tmpdir=/tmp", setup, test_connect, teardown); @@ -483,10 +486,10 @@ main (int argc, g_test_add ("/connect/unix/no-runtime", Fixture, "unix:runtime=yes;unix:tmpdir=/tmp", setup_no_runtime, test_connect, teardown_no_runtime); -#endif - g_test_add ("/message/bad-guid", Fixture, "tcp:host=127.0.0.1", setup, + g_test_add ("/message/bad-guid/unix", Fixture, "unix:tmpdir=/tmp", setup, test_bad_guid, teardown); +#endif return g_test_run (); } diff --git a/test/relay.c b/test/relay.c index 00e7966a7..5f9054602 100644 --- a/test/relay.c +++ b/test/relay.c @@ -120,7 +120,7 @@ new_conn_cb (DBusServer *server, static void setup (Fixture *f, - gconstpointer data G_GNUC_UNUSED) + gconstpointer address) { test_timeout_reset (1); @@ -128,7 +128,7 @@ setup (Fixture *f, dbus_error_init (&f->e); g_queue_init (&f->messages); - f->server = dbus_server_listen ("tcp:host=127.0.0.1", &f->e); + f->server = dbus_server_listen (address, &f->e); assert_no_error (&f->e); g_assert (f->server != NULL); @@ -321,12 +321,21 @@ main (int argc, { test_init (&argc, &argv); - g_test_add ("/connect", Fixture, NULL, setup, + g_test_add ("/connect/tcp", Fixture, "tcp:host=127.0.0.1", setup, + test_connect, teardown); + g_test_add ("/relay/tcp", Fixture, "tcp:host=127.0.0.1", setup, + test_relay, teardown); + g_test_add ("/limit/tcp", Fixture, "tcp:host=127.0.0.1", setup, + test_limit, teardown); + +#ifdef DBUS_UNIX + g_test_add ("/connect/unix", Fixture, "unix:tmpdir=/tmp", setup, test_connect, teardown); - g_test_add ("/relay", Fixture, NULL, setup, + g_test_add ("/relay/unix", Fixture, "unix:tmpdir=/tmp", setup, test_relay, teardown); - g_test_add ("/limit", Fixture, NULL, setup, + g_test_add ("/limit/unix", Fixture, "unix:tmpdir=/tmp", setup, test_limit, teardown); +#endif return g_test_run (); }