[Spice-devel] [PATCH spice-gtk 4/5] test-session: Also test hostname, username and password
Pavel Grunt
pgrunt at redhat.com
Tue May 31 13:56:06 UTC 2016
On Tue, 2016-05-31 at 12:12 +0200, Victor Toso wrote:
> Hi,
>
> On Fri, May 20, 2016 at 02:50:59PM +0200, Pavel Grunt wrote:
> > ---
> > tests/session.c | 48 +++++++++++++++++++++++++++++++++++++++++++++---
> > 1 file changed, 45 insertions(+), 3 deletions(-)
> >
> > diff --git a/tests/session.c b/tests/session.c
> > index 549378b..00a5a1e 100644
> > --- a/tests/session.c
> > +++ b/tests/session.c
> > @@ -8,33 +8,63 @@ static void test_session_uri(void)
> > struct {
> > gchar *port;
> > gchar *tls_port;
> > + gchar *host;
> > + gchar *username;
> > + gchar *password;
> > gchar *uri_input;
> > gchar *uri_output;
> > } 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=",
> > + "localhost",
> > + "user", "password",
> > + "spice://user@localhost?tls-port=5920&port=&password=password",
> > "spice://localhost?tls-port=5920" },
> > { 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" },
> > + { "42", "5930",
> > + "::1",
> > + "user", NULL,
> > + "spice://user@[::1]:42?tls-port=5930",
> > + "spice://::1?port=42&tls-port=5930" },
> > + { "42", NULL,
> > + "abcd::1",
> > + NULL, "00000",
> > + "spice://[abcd::1]?port=42&password=00000",
> > + "spice://abcd::1?port=42&" },
>
> We did not have ipv6 tests so far, right?
I don't know why we didn't have them. ipv6 support in the session uri has been
there for years.
> I would include them in a different patch and different test as well.
I can do it, but it is not a new stuff, I am not touching the parser...
Pavel
>
> > };
> >
> > /* 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();
> > g_object_set(s, "uri", tests[i].uri_input, NULL);
> > @@ -42,13 +72,22 @@ static void test_session_uri(void)
> > "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_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 +99,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.8.2
> >
>
> Looks good,
> Reviewed-by: Victor Toso <victortoso at redhat.com>
>
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list