JdkZlibTest Class — netty Architecture
Architecture documentation for the JdkZlibTest class in JdkZlibTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 4c83b538_e9fd_3b12_c32e_629bfd12e1ce["JdkZlibTest"] 18223982_070f_3c52_1182_04458ee30af1["JdkZlibTest.java"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|defined in| 18223982_070f_3c52_1182_04458ee30af1 2ca273dd_9a17_36c6_e911_cf81c582a6ba["ZlibEncoder()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| 2ca273dd_9a17_36c6_e911_cf81c582a6ba f2a9b7b4_9027_4a2e_dcdb_ecaed3083b03["ZlibDecoder()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| f2a9b7b4_9027_4a2e_dcdb_ecaed3083b03 6dd90007_4961_0b01_50a0_9787a7e5daf7["testZLIB_OR_NONE3()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| 6dd90007_4961_0b01_50a0_9787a7e5daf7 f4115661_af82_b1b2_daed_a907e5f4603d["testConcatenatedStreamsReadFirstOnly()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| f4115661_af82_b1b2_daed_a907e5f4603d e1ef85a6_0ef3_ff37_e6c7_834d0f7d0e2e["testConcatenatedStreamsReadFully()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| e1ef85a6_0ef3_ff37_e6c7_834d0f7d0e2e af4e039c_7c6d_12dd_7310_abea446807e8["testConcatenatedStreamsReadFullyWhenFragmented()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| af4e039c_7c6d_12dd_7310_abea446807e8 2863a910_3449_1827_e597_fac5ccfcfdef["testDecodeWithHeaderFollowingFooter()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| 2863a910_3449_1827_e597_fac5ccfcfdef 3dc07b32_a079_2339_c6e7_90cf08995827["testLargeEncode()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| 3dc07b32_a079_2339_c6e7_90cf08995827 9d232d38_679d_6ee7_f37d_679f5852c912["testAllowDefaultCompression()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| 9d232d38_679d_6ee7_f37d_679f5852c912 b8c867dc_2db1_aa3e_c146_857ee6705dc6["testGzipFooterValidationSuccess()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| b8c867dc_2db1_aa3e_c146_857ee6705dc6 c7710a10_d777_77cd_6cae_b6dfa80d273d["testGzipFooterCrcMismatchThrows()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| c7710a10_d777_77cd_6cae_b6dfa80d273d 3c514631_26e4_46c1_f937_90cebe447358["testGzipFooterISizeMismatchThrows()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| 3c514631_26e4_46c1_f937_90cebe447358 ffd3bc75_39ae_3f0f_391c_a929e21f7bb3["testRoundTripCompressionGzipContentMatch()"] 4c83b538_e9fd_3b12_c32e_629bfd12e1ce -->|method| ffd3bc75_39ae_3f0f_391c_a929e21f7bb3
Relationship Graph
Source Code
codec-compression/src/test/java/io/netty/handler/codec/compression/JdkZlibTest.java lines 47–365
public class JdkZlibTest extends ZlibTest {
@Override
protected ZlibEncoder createEncoder(ZlibWrapper wrapper) {
return new JdkZlibEncoder(wrapper);
}
@Override
protected ZlibDecoder createDecoder(ZlibWrapper wrapper, int maxAllocation) {
return new JdkZlibDecoder(wrapper, maxAllocation);
}
@Test
@Override
public void testZLIB_OR_NONE3() throws Exception {
assertThrows(DecompressionException.class, new Executable() {
@Override
public void execute() throws Throwable {
JdkZlibTest.super.testZLIB_OR_NONE3();
}
});
}
@Test
// verifies backward compatibility
public void testConcatenatedStreamsReadFirstOnly() throws IOException {
EmbeddedChannel chDecoderGZip = new EmbeddedChannel(createDecoder(ZlibWrapper.GZIP));
try (InputStream resourceAsStream = getClass().getResourceAsStream("/multiple.gz")) {
byte[] bytes = IOUtils.toByteArray(resourceAsStream);
assertTrue(chDecoderGZip.writeInbound(Unpooled.copiedBuffer(bytes)));
Queue<Object> messages = chDecoderGZip.inboundMessages();
assertEquals(1, messages.size());
ByteBuf msg = (ByteBuf) messages.poll();
assertEquals("a", msg.toString(CharsetUtil.UTF_8));
ReferenceCountUtil.release(msg);
} finally {
assertFalse(chDecoderGZip.finish());
chDecoderGZip.close();
}
}
@Test
public void testConcatenatedStreamsReadFully() throws IOException {
EmbeddedChannel chDecoderGZip = new EmbeddedChannel(new JdkZlibDecoder(true, 0));
try (InputStream resourceAsStream = getClass().getResourceAsStream("/multiple.gz")) {
byte[] bytes = IOUtils.toByteArray(resourceAsStream);
assertTrue(chDecoderGZip.writeInbound(Unpooled.copiedBuffer(bytes)));
Queue<Object> messages = chDecoderGZip.inboundMessages();
assertEquals(2, messages.size());
for (String s : Arrays.asList("a", "b")) {
ByteBuf msg = (ByteBuf) messages.poll();
assertEquals(s, msg.toString(CharsetUtil.UTF_8));
ReferenceCountUtil.release(msg);
}
} finally {
assertFalse(chDecoderGZip.finish());
chDecoderGZip.close();
}
}
@Test
public void testConcatenatedStreamsReadFullyWhenFragmented() throws IOException {
EmbeddedChannel chDecoderGZip = new EmbeddedChannel(new JdkZlibDecoder(true, 0));
try (InputStream resourceAsStream = getClass().getResourceAsStream("/multiple.gz")) {
byte[] bytes = IOUtils.toByteArray(resourceAsStream);
// Let's feed the input byte by byte to simulate fragmentation.
ByteBuf buf = Unpooled.copiedBuffer(bytes);
boolean written = false;
while (buf.isReadable()) {
written |= chDecoderGZip.writeInbound(buf.readRetainedSlice(1));
}
buf.release();
Source
Frequently Asked Questions
What is the JdkZlibTest class?
JdkZlibTest is a class in the netty codebase, defined in codec-compression/src/test/java/io/netty/handler/codec/compression/JdkZlibTest.java.
Where is JdkZlibTest defined?
JdkZlibTest is defined in codec-compression/src/test/java/io/netty/handler/codec/compression/JdkZlibTest.java at line 47.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free