Improve DnsNameResolverTest.testResolveA()
Motivation: DnsNameResolver.testResolveA() tests if the cache works as well as the usual DNS protocol test. To ensure the result from the cache is identical to the result without cache, it compares the two Maps which contain the result of cached/uncached resolution. The comparison of two Maps yields an expected behavior, but the output of the comparison on failure is often unreadable due to its long length. Modifications: Compare entry-by-entry for more comprehensible test failure output Result: When failure occurs, it's easier to see which domain was the cause of the problem.
This commit is contained in:
parent
9826d9bc1a
commit
c0079840be
@ -286,7 +286,13 @@ public class DnsNameResolverTest {
|
||||
|
||||
final Map<String, InetAddress> resultB = testResolve0(EXCLUSIONS_RESOLVE_A, InternetProtocolFamily.IPv4);
|
||||
|
||||
assertThat(resultA, is(resultB));
|
||||
// Ensure the result from the cache is identical from the uncached one.
|
||||
assertThat(resultB.size(), is(resultA.size()));
|
||||
for (Entry<String, InetAddress> e: resultA.entrySet()) {
|
||||
InetAddress expected = e.getValue();
|
||||
InetAddress actual = resultB.get(e.getKey());
|
||||
assertThat(actual, is(expected));
|
||||
}
|
||||
} finally {
|
||||
// Restore the TTL configuration.
|
||||
resolver.setTtl(oldMinTtl, oldMaxTtl);
|
||||
|
Loading…
Reference in New Issue
Block a user