mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-10 03:16:17 +01:00
gio/tests/network-address: fix when no network is available
GResolver doesn't do full validation of its inputs, so in some of these tests, the fact that we were getting back G_RESOLVER_ERROR_NOT_FOUND is because the junk string was getting passed to an upstream DNS resolver, which returned NXDOMAIN. But if there's no network on the machine then we'd get G_RESOLVER_ERROR_INTERNAL instead in that case.
This commit is contained in:
parent
e93f7be60d
commit
84fd73b2fa
@ -210,7 +210,24 @@ test_resolve_address_gresolver (gconstpointer d)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
g_assert_false (test->valid_resolve);
|
g_assert_false (test->valid_resolve);
|
||||||
g_assert_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_NOT_FOUND);
|
|
||||||
|
if (!test->valid_parse)
|
||||||
|
{
|
||||||
|
/* GResolver should have rejected the address internally, in
|
||||||
|
* which case we're guaranteed to get G_RESOLVER_ERROR_NOT_FOUND.
|
||||||
|
*/
|
||||||
|
g_assert_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_NOT_FOUND);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* If GResolver didn't reject the string itself, then we
|
||||||
|
* might have attempted to send it over the network. If that
|
||||||
|
* attempt succeeded, we'd get back NOT_FOUND, but if
|
||||||
|
* there's no network available we might have gotten some
|
||||||
|
* other error instead.
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user