--- tests/session.c | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/tests/session.c b/tests/session.c index a6276c2..74d32f2 100644 --- a/tests/session.c +++ b/tests/session.c @@ -8,47 +8,81 @@ static void test_session_uri(void) struct { gchar *port; gchar *tls_port; + gchar *host; + gchar *username; + gchar *password; gchar *uri_input; gchar *uri_output; + gchar *message; } tests[] = { /* Arguments with empty value */ { "5900", NULL, + "localhost", + NULL, NULL, "spice://localhost?port=5900&tls-port=", "spice://localhost?port=5900&" }, { "5910", NULL, - "spice://localhost?tls-port=&port=5910", + "localhost", + "user", NULL, + "spice://user@localhost?tls-port=&port=5910", "spice://localhost?port=5910&" }, { NULL, "5920", - "spice://localhost?tls-port=5920&port=", - "spice://localhost?tls-port=5920" }, + "localhost", + "user", "password", + "spice://user@localhost?tls-port=5920&port=&password=password", + "spice://localhost?tls-port=5920", + "password may be visible in process listings"}, { NULL, "5930", + "localhost", + NULL, NULL, "spice://localhost?port=&tls-port=5930", "spice://localhost?tls-port=5930" }, { "42", NULL, + "localhost", + NULL, NULL, "spice://localhost:42", "spice://localhost?port=42&" }, { "42", "5930", + "localhost", + NULL, NULL, "spice://localhost:42?tls-port=5930", "spice://localhost?port=42&tls-port=5930" }, + { "42", "5930", + "127.0.0.1", + NULL, NULL, + "spice://127.0.0.1:42?tls-port=5930", + "spice://127.0.0.1?port=42&tls-port=5930" }, }; /* Set URI and check URI, port and tls_port */ for (i = 0; i < G_N_ELEMENTS(tests); i++) { - gchar *uri, *port, *tls_port; + gchar *uri, *port, *tls_port, *host, *username, *password; s = spice_session_new(); + if (tests[i].message != NULL) + g_test_expect_message(G_LOG_DOMAIN, G_LOG_LEVEL_WARNING, tests[i].message); g_object_set(s, "uri", tests[i].uri_input, NULL); g_object_get(s, "uri", &uri, "port", &port, "tls-port", &tls_port, + "host", &host, + "username", &username, + "password", &password, NULL); g_assert_cmpstr(tests[i].uri_output, ==, uri); g_assert_cmpstr(tests[i].port, ==, port); g_assert_cmpstr(tests[i].tls_port, ==, tls_port); + g_assert_cmpstr(tests[i].host, ==, host); + g_assert_cmpstr(tests[i].username, ==, username); + g_assert_cmpstr(tests[i].password, ==, password); + g_test_assert_expected_messages(); g_clear_pointer(&uri, g_free); g_clear_pointer(&port, g_free); g_clear_pointer(&tls_port, g_free); + g_clear_pointer(&host, g_free); + g_clear_pointer(&username, g_free); + g_clear_pointer(&password, g_free); g_object_unref(s); } @@ -60,6 +94,9 @@ static void test_session_uri(void) g_object_set(s, "port", tests[i].port, "tls-port", tests[i].tls_port, + "host", tests[i].host, + "username", tests[i].username, + "password", tests[i].password, NULL); g_object_get(s, "uri", &uri, NULL); g_assert_cmpstr(tests[i].uri_output, ==, uri); -- 2.10.1 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel