[Spice-devel] [spice-server 5/8] test-listen: Add connection attempt to non-open port
Frediano Ziglio
fziglio at redhat.com
Fri Mar 9 11:38:11 UTC 2018
>
> ---
> server/tests/test-listen.c | 46
> +++++++++++++++++++++++++++++++++++++++++++---
> 1 file changed, 43 insertions(+), 3 deletions(-)
>
> diff --git a/server/tests/test-listen.c b/server/tests/test-listen.c
> index 052dc0b8f..562f07487 100644
> --- a/server/tests/test-listen.c
> +++ b/server/tests/test-listen.c
> @@ -98,7 +98,27 @@ static gpointer check_magic_thread(gpointer data)
> return NULL;
> }
>
> -static GThread *fake_client_new(const char *hostname, int port)
> +static gpointer check_no_connect_thread(gpointer data)
> +{
> + GError *error = NULL;
> + GSocketConnectable *connectable = G_SOCKET_CONNECTABLE(data);
> + GIOStream *stream;
> + SpiceTimer *exit_mainloop_timer;
> +
> + stream = fake_client_connect(connectable, &error);
> + g_assert(error != NULL);
> + g_assert(stream == NULL);
> + g_clear_error(&error);
> +
> + g_object_unref(connectable);
> + exit_mainloop_timer = core->timer_add(exit_mainloop_cb, NULL);
> + core->timer_start(exit_mainloop_timer, 0);
> +
> + return NULL;
> +}
> +
> +
I would use just an empty line
> +static GThread *fake_client_new(GThreadFunc thread_func, const char
> *hostname, int port)
> {
> GSocketConnectable *connectable;
>
> @@ -107,7 +127,7 @@ static GThread *fake_client_new(const char *hostname, int
> port)
> connectable = g_network_address_new(hostname, port);
>
> /* check_magic_thread will assume ownership of 'connectable' */
> - return g_thread_new("fake-client-thread", check_magic_thread,
> connectable);
> + return g_thread_new("fake-client-thread", thread_func, connectable);
> }
>
> static void test_connect_plain(void)
> @@ -125,7 +145,7 @@ static void test_connect_plain(void)
> g_assert_cmpint(result, ==, 0);
>
> /* fake client */
> - thread = fake_client_new("localhost", 5701);
> + thread = fake_client_new(check_magic_thread, "localhost", 5701);
>
> basic_event_loop_mainloop();
>
> @@ -137,10 +157,30 @@ static void test_connect_plain(void)
> spice_server_destroy(server);
> }
>
> +static void test_connect_ko(void)
> +{
> + GThread *thread;
> +
> + core = basic_event_loop_init();
> +
> + /* fake client */
> + thread = fake_client_new(check_no_connect_thread, "localhost", 5701);
> +
> + basic_event_loop_mainloop();
> +
> + g_assert_null(g_thread_join(thread));
> +
> + g_thread_unref(thread);
> + basic_event_loop_destroy();
> + core = NULL;
> +}
> +
> int main(int argc, char **argv)
> {
> g_test_init(&argc, &argv, NULL);
> +
This line (see comment on previous) :-)
> g_test_add_func("/server/listen/connect_plain", test_connect_plain);
> + g_test_add_func("/server/listen/connect_ko", test_connect_ko);
>
> return g_test_run();
> }
Otherwise,
Acked-by: Frediano Ziglio <fziglio at redhat.com>
Frediano
More information about the Spice-devel
mailing list