mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2025-12-29 10:10:19 +01:00
Add manual tcp test case.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=87999 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
This commit is contained in:
parent
b5bf338953
commit
fa1ada44ea
3 changed files with 57 additions and 1 deletions
|
|
@ -54,6 +54,10 @@ set (test-sleep-forever_SOURCES
|
|||
${CMAKE_SOURCE_DIR}/../test/test-sleep-forever.c
|
||||
)
|
||||
|
||||
set (manual-tcp_SOURCES
|
||||
${CMAKE_SOURCE_DIR}/../test/manual-tcp.c
|
||||
)
|
||||
|
||||
add_helper_executable(manual-dir-iter ${manual-dir-iter_SOURCES} ${DBUS_INTERNAL_LIBRARIES})
|
||||
add_helper_executable(test-service ${test-service_SOURCES} dbus-testutils)
|
||||
add_helper_executable(test-names ${test-names_SOURCES} dbus-testutils)
|
||||
|
|
@ -64,6 +68,7 @@ add_helper_executable(test-spawn ${test-spawn_SOURCES} ${DBUS_INTERNAL_LIBRARIES
|
|||
add_helper_executable(test-exit ${test-exit_SOURCES} ${DBUS_INTERNAL_LIBRARIES})
|
||||
add_helper_executable(test-segfault ${test-segfault_SOURCES} ${DBUS_INTERNAL_LIBRARIES})
|
||||
add_helper_executable(test-sleep-forever ${test-sleep-forever_SOURCES} ${DBUS_INTERNAL_LIBRARIES})
|
||||
add_test_executable(manual-tcp ${manual-tcp_SOURCES} ${DBUS_INTERNAL_LIBRARIES})
|
||||
|
||||
if(DBUS_WITH_GLIB)
|
||||
message(STATUS "with glib test apps")
|
||||
|
|
|
|||
|
|
@ -123,6 +123,10 @@ manual_dir_iter_SOURCES = manual-dir-iter.c
|
|||
manual_dir_iter_CPPFLAGS = $(static_cppflags)
|
||||
manual_dir_iter_LDADD = $(top_builddir)/dbus/libdbus-internal.la
|
||||
|
||||
manual_tcp_SOURCES = manual-tcp.c
|
||||
manual_tcp_CPPFLAGS = $(static_cppflags)
|
||||
manual_tcp_LDADD = $(top_builddir)/dbus/libdbus-internal.la
|
||||
|
||||
EXTRA_DIST = dbus-test-runner
|
||||
|
||||
testexecdir = $(libdir)/dbus-1.0/test
|
||||
|
|
@ -135,7 +139,8 @@ installable_tests = \
|
|||
$(NULL)
|
||||
installable_manual_tests = \
|
||||
manual-dir-iter \
|
||||
$(NULL)
|
||||
manual-tcp \
|
||||
$(NULL)
|
||||
|
||||
if DBUS_WITH_GLIB
|
||||
installable_tests += \
|
||||
|
|
|
|||
46
test/manual-tcp.c
Normal file
46
test/manual-tcp.c
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
/*
|
||||
* Simple manual tcp check
|
||||
*
|
||||
* supports:
|
||||
* - server listening check
|
||||
*
|
||||
* syntax: manual-tcp [<ipv4>|<ipv6>]
|
||||
*
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include "dbus/dbus-server-socket.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
DBusServer *server;
|
||||
DBusError error;
|
||||
int result = 0;
|
||||
int i;
|
||||
|
||||
char *family = NULL;
|
||||
|
||||
if (argc == 2)
|
||||
family = argv[1];
|
||||
|
||||
for (i = 0; i < 1000; i++)
|
||||
{
|
||||
dbus_error_init (&error);
|
||||
server = _dbus_server_new_for_tcp_socket ("localhost", "localhost", "0", family, &error, FALSE);
|
||||
if (server == NULL)
|
||||
{
|
||||
printf("%d: %s %s\n",i, error.name, error.message);
|
||||
dbus_error_free(&error);
|
||||
result = -1;
|
||||
}
|
||||
else {
|
||||
printf("%d: %s \n",i, dbus_server_get_address(server));
|
||||
dbus_server_disconnect(server);
|
||||
dbus_server_unref(server);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue