DefaultHttp2ConnectionEncoderTest Class — netty Architecture
Architecture documentation for the DefaultHttp2ConnectionEncoderTest class in DefaultHttp2ConnectionEncoderTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD aef19477_9a1f_48c4_824a_17c7f3ecbb10["DefaultHttp2ConnectionEncoderTest"] 82febf1b_e23a_0053_b4fd_3ce240942014["DefaultHttp2ConnectionEncoderTest.java"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|defined in| 82febf1b_e23a_0053_b4fd_3ce240942014 9894e144_8595_19eb_562f_72a11f871adc["setup()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 9894e144_8595_19eb_562f_72a11f871adc b5ba1e83_f8cf_fb08_6613_424c959dbff7["dataWithEndOfStreamWriteShouldSignalThatFrameWasConsumedOnError()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| b5ba1e83_f8cf_fb08_6613_424c959dbff7 6f2b008c_991c_ccc6_8ae8_0801469fdc01["dataWriteShouldSignalThatFrameWasConsumedOnError()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 6f2b008c_991c_ccc6_8ae8_0801469fdc01 46b33e92_e938_7e85_9fcd_fafe2ba99ac9["dataWriteShouldSignalThatFrameWasConsumedOnError0()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 46b33e92_e938_7e85_9fcd_fafe2ba99ac9 42ac58a2_9b3d_8db3_37dd_dceb648c3a40["dataWriteShouldSucceed()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 42ac58a2_9b3d_8db3_37dd_dceb648c3a40 6279f754_6bc9_dcee_4540_49fea32fd5e4["dataFramesShouldMerge()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 6279f754_6bc9_dcee_4540_49fea32fd5e4 a47db7fd_1d6a_3571_86d4_0505d2a63756["dataFramesShouldMergeUseVoidPromise()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| a47db7fd_1d6a_3571_86d4_0505d2a63756 f714ddd1_d034_be52_a774_2ce2c33af95f["dataFramesDontMergeWithHeaders()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| f714ddd1_d034_be52_a774_2ce2c33af95f 247dab21_0f35_bdbe_84d6_1f314359ac04["emptyFrameShouldSplitPadding()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 247dab21_0f35_bdbe_84d6_1f314359ac04 11c8cfd7_91a9_94d6_cef3_160be3093885["writeHeadersUsingVoidPromise()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 11c8cfd7_91a9_94d6_cef3_160be3093885 111fead0_62da_fdaa_9f54_af2140f5a5f1["assertSplitPaddingOnEmptyBuffer()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| 111fead0_62da_fdaa_9f54_af2140f5a5f1 e9d74205_8fd7_9ac0_9861_736c0911f3b0["headersWriteForUnknownStreamShouldCreateStream()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| e9d74205_8fd7_9ac0_9861_736c0911f3b0 c2155260_3f62_42df_f1ef_5555ef1b5c87["headersWriteShouldOpenStreamForPush()"] aef19477_9a1f_48c4_824a_17c7f3ecbb10 -->|method| c2155260_3f62_42df_f1ef_5555ef1b5c87
Relationship Graph
Source Code
codec-http2/src/test/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoderTest.java lines 79–956
public class DefaultHttp2ConnectionEncoderTest {
private static final int STREAM_ID = 2;
private static final int PUSH_STREAM_ID = 4;
@Mock
private Http2RemoteFlowController remoteFlow;
@Mock
private ChannelHandlerContext ctx;
@Mock
private Channel channel;
@Mock
private Channel.Unsafe unsafe;
@Mock
private ChannelPipeline pipeline;
@Mock
private Http2FrameWriter writer;
@Mock
private Http2FrameWriter.Configuration writerConfig;
@Mock
private Http2FrameSizePolicy frameSizePolicy;
@Mock
private Http2LifecycleManager lifecycleManager;
private DefaultHttp2ConnectionEncoder encoder;
private Http2Connection connection;
private ArgumentCaptor<Http2RemoteFlowController.FlowControlled> payloadCaptor;
private List<String> writtenData;
private List<Integer> writtenPadding;
private boolean streamClosed;
@BeforeEach
public void setup() throws Exception {
MockitoAnnotations.initMocks(this);
ChannelMetadata metadata = new ChannelMetadata(false, 16);
when(channel.isActive()).thenReturn(true);
when(channel.pipeline()).thenReturn(pipeline);
when(channel.metadata()).thenReturn(metadata);
when(channel.unsafe()).thenReturn(unsafe);
ChannelConfig config = new DefaultChannelConfig(channel);
when(channel.config()).thenReturn(config);
doAnswer(new Answer<ChannelFuture>() {
@Override
public ChannelFuture answer(InvocationOnMock in) {
return newPromise().setFailure((Throwable) in.getArgument(0));
}
}).when(channel).newFailedFuture(any(Throwable.class));
when(writer.configuration()).thenReturn(writerConfig);
when(writerConfig.frameSizePolicy()).thenReturn(frameSizePolicy);
when(frameSizePolicy.maxFrameSize()).thenReturn(64);
doAnswer(new Answer<ChannelFuture>() {
@Override
public ChannelFuture answer(InvocationOnMock in) throws Throwable {
return ((ChannelPromise) in.getArguments()[2]).setSuccess();
}
}).when(writer).writeSettings(eq(ctx), any(Http2Settings.class), any(ChannelPromise.class));
doAnswer(new Answer<ChannelFuture>() {
@Override
public ChannelFuture answer(InvocationOnMock in) throws Throwable {
((ByteBuf) in.getArguments()[3]).release();
return ((ChannelPromise) in.getArguments()[4]).setSuccess();
}
}).when(writer).writeGoAway(eq(ctx), anyInt(), anyInt(), any(ByteBuf.class), any(ChannelPromise.class));
writtenData = new ArrayList<String>();
writtenPadding = new ArrayList<Integer>();
when(writer.writeData(eq(ctx), anyInt(), any(ByteBuf.class), anyInt(), anyBoolean(),
any(ChannelPromise.class))).then(new Answer<ChannelFuture>() {
@Override
public ChannelFuture answer(InvocationOnMock in) throws Throwable {
// Make sure we only receive stream closure on the last frame and that void promises
// are used for all writes except the last one.
ChannelPromise promise = (ChannelPromise) in.getArguments()[5];
Defined In
Source
Frequently Asked Questions
What is the DefaultHttp2ConnectionEncoderTest class?
DefaultHttp2ConnectionEncoderTest is a class in the netty codebase, defined in codec-http2/src/test/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoderTest.java.
Where is DefaultHttp2ConnectionEncoderTest defined?
DefaultHttp2ConnectionEncoderTest is defined in codec-http2/src/test/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionEncoderTest.java at line 79.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free