DefaultHttp2ConnectionTest Class — netty Architecture
Architecture documentation for the DefaultHttp2ConnectionTest class in DefaultHttp2ConnectionTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 8ad19b2d_97df_9c7f_e36e_ed43457889f2["DefaultHttp2ConnectionTest"] 352a23e0_6abd_a697_4929_e2deba8ac19b["DefaultHttp2ConnectionTest.java"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|defined in| 352a23e0_6abd_a697_4929_e2deba8ac19b 2bc89047_0874_a4b1_e1ea_abf0f420fa2a["beforeClass()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 2bc89047_0874_a4b1_e1ea_abf0f420fa2a 35df9a48_a6ed_5865_2dd1_ec630c4f7a7d["afterClass()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 35df9a48_a6ed_5865_2dd1_ec630c4f7a7d 5c3a3b78_f466_ffbe_8d4d_d28a227c3373["setup()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 5c3a3b78_f466_ffbe_8d4d_d28a227c3373 21503166_22cb_ce4d_5c1a_e5e5e7da8c47["getStreamWithoutStreamShouldReturnNull()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 21503166_22cb_ce4d_5c1a_e5e5e7da8c47 a956dabb_cdd6_7947_79d5_f8696e11c53b["removeAllStreamsWithEmptyStreams()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| a956dabb_cdd6_7947_79d5_f8696e11c53b 450e6ab6_7ee2_3aff_5b8e_ee7617ab2d67["removeAllStreamsWithJustOneLocalStream()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 450e6ab6_7ee2_3aff_5b8e_ee7617ab2d67 17cb3848_7a41_8311_3a64_9ba93e6e8961["removeAllStreamsWithJustOneRemoveStream()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 17cb3848_7a41_8311_3a64_9ba93e6e8961 bb139a83_5cd3_bf72_5575_b3341847dcb9["removeAllStreamsWithManyActiveStreams()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| bb139a83_5cd3_bf72_5575_b3341847dcb9 03661793_673b_bdfd_de1e_eb7ffe08504f["removeIndividualStreamsWhileCloseDoesNotNPE()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 03661793_673b_bdfd_de1e_eb7ffe08504f 28b320ed_4638_376e_4c97_0d96b825a4da["removeAllStreamsWhileIteratingActiveStreams()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 28b320ed_4638_376e_4c97_0d96b825a4da db615c66_b0fb_664a_98b1_36605e1a7295["removeAllStreamsWhileIteratingActiveStreamsAndExceptionOccurs()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| db615c66_b0fb_664a_98b1_36605e1a7295 1ed70ee7_bb67_cb69_9fa4_8c728ca80f2d["goAwayReceivedShouldCloseStreamsGreaterThanLastStream()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| 1ed70ee7_bb67_cb69_9fa4_8c728ca80f2d d59e475a_f067_5847_2f05_5a4246affa0a["goAwaySentShouldCloseStreamsGreaterThanLastStream()"] 8ad19b2d_97df_9c7f_e36e_ed43457889f2 -->|method| d59e475a_f067_5847_2f05_5a4246affa0a
Relationship Graph
Source Code
codec-http2/src/test/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionTest.java lines 58–748
public class DefaultHttp2ConnectionTest {
private DefaultHttp2Connection server;
private DefaultHttp2Connection client;
private static EventLoopGroup group;
@Mock
private Http2Connection.Listener clientListener;
@Mock
private Http2Connection.Listener clientListener2;
@BeforeAll
public static void beforeClass() {
group = new MultiThreadIoEventLoopGroup(2, LocalIoHandler.newFactory());
}
@AfterAll
public static void afterClass() {
group.shutdownGracefully();
}
@BeforeEach
public void setup() {
MockitoAnnotations.initMocks(this);
server = new DefaultHttp2Connection(true);
client = new DefaultHttp2Connection(false);
client.addListener(clientListener);
doAnswer(new Answer<Void>() {
@Override
public Void answer(InvocationOnMock invocation) throws Throwable {
assertNotNull(client.stream(((Http2Stream) invocation.getArgument(0)).id()));
return null;
}
}).when(clientListener).onStreamClosed(any(Http2Stream.class));
doAnswer(new Answer<Void>() {
@Override
public Void answer(InvocationOnMock invocation) throws Throwable {
assertNull(client.stream(((Http2Stream) invocation.getArgument(0)).id()));
return null;
}
}).when(clientListener).onStreamRemoved(any(Http2Stream.class));
}
@Test
public void getStreamWithoutStreamShouldReturnNull() {
assertNull(server.stream(100));
}
@Test
public void removeAllStreamsWithEmptyStreams() throws InterruptedException {
testRemoveAllStreams();
}
@Test
public void removeAllStreamsWithJustOneLocalStream() throws Exception {
client.local().createStream(3, false);
testRemoveAllStreams();
}
@Test
public void removeAllStreamsWithJustOneRemoveStream() throws Exception {
client.remote().createStream(2, false);
testRemoveAllStreams();
}
@Test
public void removeAllStreamsWithManyActiveStreams() throws Exception {
Endpoint<Http2RemoteFlowController> remote = client.remote();
Endpoint<Http2LocalFlowController> local = client.local();
for (int c = 3, s = 2; c < 5000; c += 2, s += 2) {
local.createStream(c, false);
remote.createStream(s, false);
}
testRemoveAllStreams();
}
@Test
public void removeIndividualStreamsWhileCloseDoesNotNPE() throws Exception {
final Http2Stream streamA = client.local().createStream(3, false);
Source
Frequently Asked Questions
What is the DefaultHttp2ConnectionTest class?
DefaultHttp2ConnectionTest is a class in the netty codebase, defined in codec-http2/src/test/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionTest.java.
Where is DefaultHttp2ConnectionTest defined?
DefaultHttp2ConnectionTest is defined in codec-http2/src/test/java/io/netty/handler/codec/http2/DefaultHttp2ConnectionTest.java at line 58.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free