mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 06:56:14 +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
|
||||
{
|
||||
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);
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user