Home / Function/ testResolveAllMx() — netty Function Reference

testResolveAllMx() — netty Function Reference

Architecture documentation for the testResolveAllMx() function in DnsNameResolverTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  4dcbe1eb_738d_5742_5a30_8189bb5b734c["testResolveAllMx()"]
  b6215f36_0afe_a284_a3fd_3999e90a8e97["DnsNameResolverTest"]
  4dcbe1eb_738d_5742_5a30_8189bb5b734c -->|defined in| b6215f36_0afe_a284_a3fd_3999e90a8e97
  style 4dcbe1eb_738d_5742_5a30_8189bb5b734c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverTest.java lines 1157–1201

    @ParameterizedTest
    @EnumSource(DnsNameResolverChannelStrategy.class)
    public void testResolveAllMx(DnsNameResolverChannelStrategy strategy) {
        final DnsNameResolver resolver = newResolver(strategy).build();
        try {
            assertTrue(resolver.isRecursionDesired());

            final Map<String, Future<List<DnsRecord>>> futures = new LinkedHashMap<String, Future<List<DnsRecord>>>();
            for (String name : DOMAINS) {
                if (EXCLUSIONS_QUERY_MX.contains(name)) {
                    continue;
                }

                futures.put(name, resolver.resolveAll(new DefaultDnsQuestion(name, DnsRecordType.MX)));
            }

            for (Entry<String, Future<List<DnsRecord>>> e : futures.entrySet()) {
                String hostname = e.getKey();
                Future<List<DnsRecord>> f = e.getValue().awaitUninterruptibly();

                final List<DnsRecord> mxList = f.getNow();
                assertThat(mxList.size()).isGreaterThan(0);
                StringBuilder buf = new StringBuilder();
                for (DnsRecord r : mxList) {
                    ByteBuf recordContent = ((ByteBufHolder) r).content();

                    buf.append(StringUtil.NEWLINE);
                    buf.append('\t');
                    buf.append(r.name());
                    buf.append(' ');
                    buf.append(r.type().name());
                    buf.append(' ');
                    buf.append(recordContent.readUnsignedShort());
                    buf.append(' ');
                    buf.append(DnsResolveContext.decodeDomainName(recordContent));

                    ReferenceCountUtil.release(r);
                }

                logger.info("{} has the following MX records:{}", hostname, buf);
            }
        } finally {
            resolver.close();
        }
    }

Domain

Subdomains

Frequently Asked Questions

What does testResolveAllMx() do?
testResolveAllMx() is a function in the netty codebase, defined in resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverTest.java.
Where is testResolveAllMx() defined?
testResolveAllMx() is defined in resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverTest.java at line 1157.

Analyze Your Own Codebase

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

Try Supermodel Free