Home / Class/ AbstractComboTestsuiteTest Class — netty Architecture

AbstractComboTestsuiteTest Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  7a5bfab1_80e3_582d_1d6a_04a8e57c30fc["AbstractComboTestsuiteTest"]
  5e4aee6a_4268_6333_f359_51eebcd3a1ba["AbstractComboTestsuiteTest.java"]
  7a5bfab1_80e3_582d_1d6a_04a8e57c30fc -->|defined in| 5e4aee6a_4268_6333_f359_51eebcd3a1ba
  451d966e_90cb_af29_8b86_be6ba43c49f8["newFactories()"]
  7a5bfab1_80e3_582d_1d6a_04a8e57c30fc -->|method| 451d966e_90cb_af29_8b86_be6ba43c49f8
  a3d34afe_e209_636a_0fed_b250b6525e4b["newAllocators()"]
  7a5bfab1_80e3_582d_1d6a_04a8e57c30fc -->|method| a3d34afe_e209_636a_0fed_b250b6525e4b
  4ef6ce40_38ad_2428_89c2_5bb3a5c19e2c["run()"]
  7a5bfab1_80e3_582d_1d6a_04a8e57c30fc -->|method| 4ef6ce40_38ad_2428_89c2_5bb3a5c19e2c
  92a90c79_2953_5737_6e7d_339b1c400df6["configure()"]
  7a5bfab1_80e3_582d_1d6a_04a8e57c30fc -->|method| 92a90c79_2953_5737_6e7d_339b1c400df6

Relationship Graph

Source Code

testsuite/src/main/java/io/netty/testsuite/transport/AbstractComboTestsuiteTest.java lines 28–62

public abstract class AbstractComboTestsuiteTest<SB extends AbstractBootstrap<?, ?>,
        CB extends AbstractBootstrap<?, ?>> {
    protected final InternalLogger logger = InternalLoggerFactory.getInstance(getClass());
    protected volatile CB cb;
    protected volatile SB sb;

    protected abstract List<TestsuitePermutation.BootstrapComboFactory<SB, CB>> newFactories();

    protected List<ByteBufAllocator> newAllocators() {
        return TestsuitePermutation.allocator();
    }

    protected void run(TestInfo testInfo, Runner<SB, CB> runner) throws Throwable {
        List<TestsuitePermutation.BootstrapComboFactory<SB, CB>> combos = newFactories();
        String methodName = TestUtils.testMethodName(testInfo);
        for (ByteBufAllocator allocator: newAllocators()) {
            int i = 0;
            for (TestsuitePermutation.BootstrapComboFactory<SB, CB> e: combos) {
                sb = e.newServerInstance();
                cb = e.newClientInstance();
                configure(sb, cb, allocator);
                logger.info(String.format(
                        "Running: %s %d of %d (%s + %s) with %s",
                        methodName, ++ i, combos.size(), sb, cb, StringUtil.simpleClassName(allocator)));
                runner.run(sb, cb);
            }
        }
    }

    protected abstract void configure(SB sb, CB cb, ByteBufAllocator allocator);

    public interface Runner<SB extends AbstractBootstrap<?, ?>, CB extends AbstractBootstrap<?, ?>> {
        void run(SB sb, CB cb) throws Throwable;
    }
}

Frequently Asked Questions

What is the AbstractComboTestsuiteTest class?
AbstractComboTestsuiteTest is a class in the netty codebase, defined in testsuite/src/main/java/io/netty/testsuite/transport/AbstractComboTestsuiteTest.java.
Where is AbstractComboTestsuiteTest defined?
AbstractComboTestsuiteTest is defined in testsuite/src/main/java/io/netty/testsuite/transport/AbstractComboTestsuiteTest.java at line 28.

Analyze Your Own Codebase

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

Try Supermodel Free