Home / Function/ testDecodeLastNonEmptyBuffer() — netty Function Reference

testDecodeLastNonEmptyBuffer() — netty Function Reference

Architecture documentation for the testDecodeLastNonEmptyBuffer() function in ByteToMessageDecoderTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  5185bf22_9ccd_65c9_b750_375e3adc5f50["testDecodeLastNonEmptyBuffer()"]
  b1c999fe_35fb_8b70_a958_296cffb0616a["ByteToMessageDecoderTest"]
  5185bf22_9ccd_65c9_b750_375e3adc5f50 -->|defined in| b1c999fe_35fb_8b70_a958_296cffb0616a
  5082856a_b229_862d_0072_81f9b24f56a3["EmbeddedChannel()"]
  5185bf22_9ccd_65c9_b750_375e3adc5f50 -->|calls| 5082856a_b229_862d_0072_81f9b24f56a3
  055e5723_0f5b_8b83_9de3_bedcb348a8e8["assertBuffer()"]
  5185bf22_9ccd_65c9_b750_375e3adc5f50 -->|calls| 055e5723_0f5b_8b83_9de3_bedcb348a8e8
  style 5185bf22_9ccd_65c9_b750_375e3adc5f50 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

codec-base/src/test/java/io/netty/handler/codec/ByteToMessageDecoderTest.java lines 269–300

    @Test
    public void testDecodeLastNonEmptyBuffer() {
        EmbeddedChannel channel = new EmbeddedChannel(new ByteToMessageDecoder() {
            private boolean decodeLast;

            @Override
            protected void decode(ChannelHandlerContext ctx, ByteBuf in, List<Object> out) throws Exception {
                int readable = in.readableBytes();
                assertTrue(readable > 0);
                if (!decodeLast && readable == 1) {
                    return;
                }
                out.add(in.readBytes(decodeLast ? readable : readable - 1));
            }

            @Override
            protected void decodeLast(ChannelHandlerContext ctx, ByteBuf in, List<Object> out) throws Exception {
                assertFalse(decodeLast);
                decodeLast = true;
                super.decodeLast(ctx, in, out);
            }
        });
        byte[] bytes = new byte[1024];
        ThreadLocalRandom.current().nextBytes(bytes);

        assertTrue(channel.writeInbound(Unpooled.copiedBuffer(bytes)));
        assertBuffer(Unpooled.wrappedBuffer(bytes, 0, bytes.length - 1), (ByteBuf) channel.readInbound());
        assertNull(channel.readInbound());
        assertTrue(channel.finish());
        assertBuffer(Unpooled.wrappedBuffer(bytes, bytes.length - 1, 1), (ByteBuf) channel.readInbound());
        assertNull(channel.readInbound());
    }

Domain

Subdomains

Frequently Asked Questions

What does testDecodeLastNonEmptyBuffer() do?
testDecodeLastNonEmptyBuffer() is a function in the netty codebase, defined in codec-base/src/test/java/io/netty/handler/codec/ByteToMessageDecoderTest.java.
Where is testDecodeLastNonEmptyBuffer() defined?
testDecodeLastNonEmptyBuffer() is defined in codec-base/src/test/java/io/netty/handler/codec/ByteToMessageDecoderTest.java at line 269.
What does testDecodeLastNonEmptyBuffer() call?
testDecodeLastNonEmptyBuffer() calls 2 function(s): EmbeddedChannel, assertBuffer.

Analyze Your Own Codebase

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

Try Supermodel Free