Home / Class/ DefaultPromiseTest Class — netty Architecture

DefaultPromiseTest Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  18d135a2_101c_bae7_e68f_dd4660e1fb75["DefaultPromiseTest"]
  c8ee1ee4_0bc9_1fc7_8106_4f4ee23722a5["DefaultPromiseTest.java"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|defined in| c8ee1ee4_0bc9_1fc7_8106_4f4ee23722a5
  358fa54f_69ec_6494_a5ac_e70c555ad28f["beforeClass()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| 358fa54f_69ec_6494_a5ac_e70c555ad28f
  9ca0ebb9_e2e4_dd45_b3b5_cf84a53383f5["findStackOverflowDepth()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| 9ca0ebb9_e2e4_dd45_b3b5_cf84a53383f5
  5f971e63_3644_1cc9_bf84_7bb3625c62cc["stackOverflowTestDepth()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| 5f971e63_3644_1cc9_bf84_7bb3625c62cc
  83d527ca_48df_06bb_71de_71add37927f7["testCancelDoesNotScheduleWhenNoListeners()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| 83d527ca_48df_06bb_71de_71add37927f7
  b961bdcf_fac0_5073_5060_43ee9b4732c0["testSuccessDoesNotScheduleWhenNoListeners()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| b961bdcf_fac0_5073_5060_43ee9b4732c0
  d35d4b64_b13e_7071_eaff_59bba778919e["testFailureDoesNotScheduleWhenNoListeners()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| d35d4b64_b13e_7071_eaff_59bba778919e
  e6eeb0bf_b513_6da5_3b3a_5514e1d9b54a["testCancellationExceptionIsThrownWhenBlockingGet()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| e6eeb0bf_b513_6da5_3b3a_5514e1d9b54a
  f3fa26de_3fe3_f842_5ba2_9739de32dc6a["testCancellationExceptionIsThrownWhenBlockingGetWithTimeout()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| f3fa26de_3fe3_f842_5ba2_9739de32dc6a
  436da8ed_21be_d578_3f29_498ac3002d27["testCancellationExceptionIsReturnedAsCause()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| 436da8ed_21be_d578_3f29_498ac3002d27
  f4529a19_5735_b09f_69b7_721196b5ede6["testStackOverflowWithImmediateEventExecutorA()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| f4529a19_5735_b09f_69b7_721196b5ede6
  ddc20803_8c6f_f526_ad36_f7ff701a4bb8["testNoStackOverflowWithDefaultEventExecutorA()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| ddc20803_8c6f_f526_ad36_f7ff701a4bb8
  df445981_e6da_bccd_fb45_6abaf313a582["testNoStackOverflowWithImmediateEventExecutorB()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| df445981_e6da_bccd_fb45_6abaf313a582
  7ac44f09_fa8d_0c8a_bba0_0c0e7d19cb15["testNoStackOverflowWithDefaultEventExecutorB()"]
  18d135a2_101c_bae7_e68f_dd4660e1fb75 -->|method| 7ac44f09_fa8d_0c8a_bba0_0c0e7d19cb15

Relationship Graph

Source Code

common/src/test/java/io/netty/util/concurrent/DefaultPromiseTest.java lines 49–608

public class DefaultPromiseTest {
    private static final InternalLogger logger = InternalLoggerFactory.getInstance(DefaultPromiseTest.class);
    private static int stackOverflowDepth;

    @BeforeAll
    public static void beforeClass() {
        try {
            findStackOverflowDepth();
            throw new IllegalStateException("Expected StackOverflowError but didn't get it?!");
        } catch (StackOverflowError e) {
            logger.debug("StackOverflowError depth: {}", stackOverflowDepth);
        }
    }

    @SuppressWarnings("InfiniteRecursion")
    private static void findStackOverflowDepth() {
        ++stackOverflowDepth;
        findStackOverflowDepth();
    }

    private static int stackOverflowTestDepth() {
        return max(stackOverflowDepth << 1, stackOverflowDepth);
    }

    private static class RejectingEventExecutor extends AbstractEventExecutor {
        @Override
        public boolean isShuttingDown() {
            return false;
        }

        @Override
        public Future<?> shutdownGracefully(long quietPeriod, long timeout, TimeUnit unit) {
            return null;
        }

        @Override
        public Future<?> terminationFuture() {
            return null;
        }

        @Override
        public void shutdown() {
        }

        @Override
        public boolean isShutdown() {
            return false;
        }

        @Override
        public boolean isTerminated() {
            return false;
        }

        @Override
        public boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException {
            return false;
        }

        @Override
        public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) {
            return fail("Cannot schedule commands");
        }

        @Override
        public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) {
            return fail("Cannot schedule commands");
        }

        @Override
        public ScheduledFuture<?> scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit) {
            return fail("Cannot schedule commands");
        }

        @Override
        public ScheduledFuture<?> scheduleWithFixedDelay(Runnable command, long initialDelay, long delay,
                                                         TimeUnit unit) {
            return fail("Cannot schedule commands");
        }

        @Override

Frequently Asked Questions

What is the DefaultPromiseTest class?
DefaultPromiseTest is a class in the netty codebase, defined in common/src/test/java/io/netty/util/concurrent/DefaultPromiseTest.java.
Where is DefaultPromiseTest defined?
DefaultPromiseTest is defined in common/src/test/java/io/netty/util/concurrent/DefaultPromiseTest.java at line 49.

Analyze Your Own Codebase

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

Try Supermodel Free