diff options
author | rl1987 <rl1987@sdf.lonestar.org> | 2015-10-10 17:49:24 +0300 |
---|---|---|
committer | rl1987 <rl1987@sdf.lonestar.org> | 2015-10-24 14:30:51 +0300 |
commit | 787a27be3e27d11d873352a8eb14e068ed3fdad5 (patch) | |
tree | 43249e5ec286148d273238b1590c571b93c32dd8 /src/test/test_dns.c | |
parent | 1096f7638e883f9a6dfc86b9804090f090afb68f (diff) | |
download | tor-787a27be3e27d11d873352a8eb14e068ed3fdad5.tar.gz tor-787a27be3e27d11d873352a8eb14e068ed3fdad5.zip |
Third test case for dns_resolve_impl.
Diffstat (limited to 'src/test/test_dns.c')
-rw-r--r-- | src/test/test_dns.c | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/src/test/test_dns.c b/src/test/test_dns.c index 88a2f4a74b..aeabdf633f 100644 --- a/src/test/test_dns.c +++ b/src/test/test_dns.c @@ -422,12 +422,40 @@ NS(test_main)(void *arg) #define NS_SUBMODULE ASPECT(resolve_impl, addr_is_invalid_dest) +/** Given that address is not a valid destination (as judged by + * address_is_invalid_destination() function), we want dns_resolve_impl() + * function to fail with return value -1. + */ + +static int +NS(router_my_exit_policy_is_reject_star)(void) +{ + return 0; +} + static void NS(test_main)(void *arg) { - tt_skip(); + int retval; + int made_pending; + + edge_connection_t *exitconn = create_valid_exitconn(); + or_circuit_t *on_circ = tor_malloc_zero(sizeof(or_circuit_t)); + + NS_MOCK(router_my_exit_policy_is_reject_star); + + TO_CONN(exitconn)->address = tor_strdup("invalid#@!.org"); + + retval = dns_resolve_impl(exitconn, 1, on_circ, NULL, &made_pending, + NULL); + + tt_int_op(retval,==,-1); done: + NS_UNMOCK(router_my_exit_policy_is_reject_star); + tor_free(TO_CONN(exitconn)->address); + tor_free(exitconn); + tor_free(on_circ); return; } |