Home / Class/ DnsNameResolverBuilderTest Class — netty Architecture

DnsNameResolverBuilderTest Class — netty Architecture

Architecture documentation for the DnsNameResolverBuilderTest class in DnsNameResolverBuilderTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  e68c14ee_0202_2631_ca8f_962b74598eda["DnsNameResolverBuilderTest"]
  cdcbd500_6a41_b94e_fe5d_26da5f79538a["DnsNameResolverBuilderTest.java"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|defined in| cdcbd500_6a41_b94e_fe5d_26da5f79538a
  8df6484b_eebe_e66c_da03_39262b384eac["setUp()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 8df6484b_eebe_e66c_da03_39262b384eac
  ea1a4eda_aa74_09aa_9f66_81fa31e969b5["tearDown()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| ea1a4eda_aa74_09aa_9f66_81fa31e969b5
  62b9eb1a_3d2a_091a_de91_4a59b1a0aede["shutdownEventLoopGroup()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 62b9eb1a_3d2a_091a_de91_4a59b1a0aede
  cf8932f4_77eb_80de_e243_b9a9a67767de["testDefaults()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| cf8932f4_77eb_80de_e243_b9a9a67767de
  0bbe192d_9cf6_9b14_5117_56164748a984["testCustomDnsCacheDefaultTtl()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 0bbe192d_9cf6_9b14_5117_56164748a984
  b7663cb4_dd7e_d96b_a095_834674c11d30["testCustomDnsCacheCustomTtl()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| b7663cb4_dd7e_d96b_a095_834674c11d30
  c5f4962f_bc41_7a6d_1d9a_d2769aa06bab["testCustomDnsCnameCacheDefaultTtl()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| c5f4962f_bc41_7a6d_1d9a_d2769aa06bab
  2e7eacf4_e8f0_f716_61c1_3cd10b569c64["testCustomDnsCnameCacheCustomTtl()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 2e7eacf4_e8f0_f716_61c1_3cd10b569c64
  71cd06e4_e47c_0388_82b1_83927f9b26d4["testCustomAuthoritativeDnsServerCacheDefaultTtl()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 71cd06e4_e47c_0388_82b1_83927f9b26d4
  815cbe9c_2008_95a4_69ec_227ebe6f4232["testCustomAuthoritativeDnsServerCacheCustomTtl()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 815cbe9c_2008_95a4_69ec_227ebe6f4232
  89cde13b_6b6c_fef8_e12e_bdcb96e036fb["disableQueryTimeoutWithZero()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 89cde13b_6b6c_fef8_e12e_bdcb96e036fb
  9c708eeb_62c9_bdb9_2acc_5070cbb0a043["checkDefaultDnsCache()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| 9c708eeb_62c9_bdb9_2acc_5070cbb0a043
  d20c6b66_b826_f25a_20fb_7f72424561b7["checkDefaultDnsCnameCache()"]
  e68c14ee_0202_2631_ca8f_962b74598eda -->|method| d20c6b66_b826_f25a_20fb_7f72424561b7

Relationship Graph

Source Code

resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverBuilderTest.java lines 36–278

class DnsNameResolverBuilderTest {
    private static final EventLoopGroup GROUP = new MultiThreadIoEventLoopGroup(1, NioIoHandler.newFactory());

    private DnsNameResolverBuilder builder;
    private DnsNameResolver resolver;

    @BeforeEach
    void setUp() {
        builder = new DnsNameResolverBuilder(GROUP.next()).datagramChannelType(NioDatagramChannel.class);
    }

    @AfterEach
    void tearDown() {
        if (resolver != null) {
            resolver.close();
        }
    }

    @AfterAll
    static void shutdownEventLoopGroup() {
        GROUP.shutdownGracefully();
    }

    @Test
    void testDefaults() {
        resolver = builder.build();

        checkDefaultDnsCache((DefaultDnsCache) resolver.resolveCache(), MAX_SUPPORTED_TTL_SECS, 0, 0);

        checkDefaultDnsCnameCache((DefaultDnsCnameCache) resolver.cnameCache(), MAX_SUPPORTED_TTL_SECS, 0);

        checkDefaultAuthoritativeDnsServerCache(
                (DefaultAuthoritativeDnsServerCache) resolver.authoritativeDnsServerCache(), MAX_SUPPORTED_TTL_SECS, 0);
assertThat(resolver.queryDnsServerAddressStream()).isInstanceOf(ThreadLocalNameServerAddressStream.class);
    }

    @Test
    void testCustomDnsCacheDefaultTtl() {
        DnsCache testDnsCache = new TestDnsCache();
        resolver = builder.resolveCache(testDnsCache).build();

        assertThat(resolver.resolveCache()).isSameAs(testDnsCache);

        checkDefaultDnsCnameCache((DefaultDnsCnameCache) resolver.cnameCache(), MAX_SUPPORTED_TTL_SECS, 0);

        checkDefaultAuthoritativeDnsServerCache(
                (DefaultAuthoritativeDnsServerCache) resolver.authoritativeDnsServerCache(), MAX_SUPPORTED_TTL_SECS, 0);
    }

    @Test
    void testCustomDnsCacheCustomTtl() {
        DnsCache testDnsCache = new TestDnsCache();
        resolver = builder.resolveCache(testDnsCache).ttl(1, 2).negativeTtl(3).build();

        assertThat(resolver.resolveCache()).isSameAs(testDnsCache);

        checkDefaultDnsCnameCache((DefaultDnsCnameCache) resolver.cnameCache(), 2, 1);

        checkDefaultAuthoritativeDnsServerCache(
                (DefaultAuthoritativeDnsServerCache) resolver.authoritativeDnsServerCache(), 2, 1);
    }

    @Test
    void testCustomDnsCnameCacheDefaultTtl() {
        DnsCnameCache testDnsCnameCache = new TestDnsCnameCache();
        resolver = builder.cnameCache(testDnsCnameCache).build();

        checkDefaultDnsCache((DefaultDnsCache) resolver.resolveCache(), MAX_SUPPORTED_TTL_SECS, 0, 0);

        assertThat(resolver.cnameCache()).isSameAs(testDnsCnameCache);

        checkDefaultAuthoritativeDnsServerCache(
                (DefaultAuthoritativeDnsServerCache) resolver.authoritativeDnsServerCache(), MAX_SUPPORTED_TTL_SECS, 0);
    }

    @Test
    void testCustomDnsCnameCacheCustomTtl() {
        DnsCnameCache testDnsCnameCache = new TestDnsCnameCache();
        resolver = builder.cnameCache(testDnsCnameCache).ttl(1, 2).negativeTtl(3).build();

        checkDefaultDnsCache((DefaultDnsCache) resolver.resolveCache(), 2, 1, 3);

Frequently Asked Questions

What is the DnsNameResolverBuilderTest class?
DnsNameResolverBuilderTest is a class in the netty codebase, defined in resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverBuilderTest.java.
Where is DnsNameResolverBuilderTest defined?
DnsNameResolverBuilderTest is defined in resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverBuilderTest.java at line 36.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free