MqttCodecTest Class — netty Architecture
Architecture documentation for the MqttCodecTest class in MqttCodecTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD f4aba1d9_6b30_ec96_9eaa_4c5557b5796d["MqttCodecTest"] 3faa4fa4_cb4a_efb1_5da0_851d6a62f392["MqttCodecTest.java"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|defined in| 3faa4fa4_cb4a_efb1_5da0_851d6a62f392 bb43b4a2_1129_0c9f_c917_14a03c1f59a3["setup()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| bb43b4a2_1129_0c9f_c917_14a03c1f59a3 3d3dd0bf_4aa7_cb28_160b_9af51d1bbb3e["after()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| 3d3dd0bf_4aa7_cb28_160b_9af51d1bbb3e 0764af8f_a263_56a2_4ca3_a180a670062e["testConnectMessageForMqtt31()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| 0764af8f_a263_56a2_4ca3_a180a670062e ef6d558b_11d8_631d_d362_79c87c75fe91["testConnectMessageForMqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| ef6d558b_11d8_631d_d362_79c87c75fe91 48895b86_20cf_43a8_d531_141aba09f5a7["testConnectMessageWithNonZeroReservedFlagForMqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| 48895b86_20cf_43a8_d531_141aba09f5a7 5ec42da1_01ec_5212_5bbc_1e8a97a85ed9["testConnectMessageNonZeroReservedBit0Mqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| 5ec42da1_01ec_5212_5bbc_1e8a97a85ed9 d87c524d_094f_0adf_a1e4_a4fe8f3b313d["testConnectMessageNonZeroReservedBit1Mqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| d87c524d_094f_0adf_a1e4_a4fe8f3b313d 0f1f828d_dca6_f95b_2d04_43504c9a6619["testConnectMessageNonZeroReservedBit2Mqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| 0f1f828d_dca6_f95b_2d04_43504c9a6619 6bdc0d39_92a6_8433_2f4a_8f71204baf46["testConnectMessageNonZeroReservedBit3Mqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| 6bdc0d39_92a6_8433_2f4a_8f71204baf46 ec3c247d_4afa_5406_fd4d_5976ee7125e7["testConnectMessageForPassword311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| ec3c247d_4afa_5406_fd4d_5976ee7125e7 b6bc9b48_5702_547c_942d_72ce74efdfd2["testConnectMessageForPassword5()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| b6bc9b48_5702_547c_942d_72ce74efdfd2 f1625bf6_4645_1cba_fe37_dbe316ac137e["testSubscribeMessageNonZeroReservedBit0Mqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| f1625bf6_4645_1cba_fe37_dbe316ac137e bb96ee86_fc13_4a15_821b_81fbe0698aff["testSubscribeMessageZeroReservedBit1Mqtt311()"] f4aba1d9_6b30_ec96_9eaa_4c5557b5796d -->|method| bb96ee86_fc13_4a15_821b_81fbe0698aff
Relationship Graph
Source Code
codec-mqtt/src/test/java/io/netty/handler/codec/mqtt/MqttCodecTest.java lines 77–1134
public class MqttCodecTest {
private static final String CLIENT_ID = "RANDOM_TEST_CLIENT";
private static final String WILL_TOPIC = "/my_will";
private static final String WILL_MESSAGE = "gone";
private static final String USER_NAME = "happy_user";
private static final String PASSWORD = "123_or_no_pwd";
private static final byte[] PASSWORD_BYTES = PASSWORD.getBytes(CharsetUtil.UTF_8);
private static final int KEEP_ALIVE_SECONDS = 600;
private static final ByteBufAllocator ALLOCATOR = new UnpooledByteBufAllocator(false);
@Mock
private final ChannelHandlerContext ctx = mock(ChannelHandlerContext.class);
@Mock
private final Channel channel = mock(Channel.class);
@Mock
private final Attribute<MqttVersion> versionAttrMock = mock(Attribute.class);
private final List<Object> out = new ArrayList<>();
private final MqttDecoder mqttDecoder = new MqttDecoder();
/**
* MqttDecoder with an unrealistic max payload size of 1 byte.
*/
private final MqttDecoder mqttDecoderLimitedMessageSize = new MqttDecoder(1);
@BeforeEach
public void setup() {
MockitoAnnotations.initMocks(this);
when(ctx.channel()).thenReturn(channel);
when(ctx.alloc()).thenReturn(ALLOCATOR);
when(ctx.fireChannelRead(any())).then((Answer<ChannelHandlerContext>) invocation -> {
out.add(invocation.getArguments()[0]);
return ctx;
});
when(channel.attr(MqttCodecUtil.MQTT_VERSION_KEY)).thenReturn(versionAttrMock);
}
@AfterEach
public void after() {
for (Object o : out) {
ReferenceCountUtil.release(o);
}
out.clear();
}
@Test
public void testConnectMessageForMqtt31() throws Exception {
final MqttConnectMessage message = createConnectMessage(MqttVersion.MQTT_3_1);
ByteBuf byteBuf = MqttEncoder.doEncode(ctx, message);
mqttDecoder.channelRead(ctx, byteBuf);
assertEquals(1, out.size());
final MqttConnectMessage decodedMessage = (MqttConnectMessage) out.get(0);
validateFixedHeaders(message.fixedHeader(), decodedMessage.fixedHeader());
validateConnectVariableHeader(message.variableHeader(), decodedMessage.variableHeader());
validateConnectPayload(message.payload(), decodedMessage.payload());
}
@Test
public void testConnectMessageForMqtt311() throws Exception {
final MqttConnectMessage message = createConnectMessage(MqttVersion.MQTT_3_1_1);
ByteBuf byteBuf = MqttEncoder.doEncode(ctx, message);
mqttDecoder.channelRead(ctx, byteBuf);
assertEquals(1, out.size());
final MqttConnectMessage decodedMessage = (MqttConnectMessage) out.get(0);
validateFixedHeaders(message.fixedHeader(), decodedMessage.fixedHeader());
validateConnectVariableHeader(message.variableHeader(), decodedMessage.variableHeader());
validateConnectPayload(message.payload(), decodedMessage.payload());
Source
Frequently Asked Questions
What is the MqttCodecTest class?
MqttCodecTest is a class in the netty codebase, defined in codec-mqtt/src/test/java/io/netty/handler/codec/mqtt/MqttCodecTest.java.
Where is MqttCodecTest defined?
MqttCodecTest is defined in codec-mqtt/src/test/java/io/netty/handler/codec/mqtt/MqttCodecTest.java at line 77.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free