MessageToMessageEncoderTest Class — netty Architecture
Architecture documentation for the MessageToMessageEncoderTest class in MessageToMessageEncoderTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 0494f80b_8e1a_0fd3_6c29_d4d0e215de8c["MessageToMessageEncoderTest"] a3256067_01bb_999d_9102_855a593e13a4["MessageToMessageEncoderTest.java"] 0494f80b_8e1a_0fd3_6c29_d4d0e215de8c -->|defined in| a3256067_01bb_999d_9102_855a593e13a4 47219b52_5c2c_5b8b_bd3c_a21f3c026eed["testException()"] 0494f80b_8e1a_0fd3_6c29_d4d0e215de8c -->|method| 47219b52_5c2c_5b8b_bd3c_a21f3c026eed 8a4a6621_39a4_7c8c_f4bb_681cfd8395f0["testIntermediateWriteFailures()"] 0494f80b_8e1a_0fd3_6c29_d4d0e215de8c -->|method| 8a4a6621_39a4_7c8c_f4bb_681cfd8395f0
Relationship Graph
Source Code
codec-base/src/test/java/io/netty/handler/codec/MessageToMessageEncoderTest.java lines 33–86
public class MessageToMessageEncoderTest {
/**
* Test-case for https://github.com/netty/netty/issues/1656
*/
@Test
public void testException() {
final EmbeddedChannel channel = new EmbeddedChannel(new MessageToMessageEncoder<Object>() {
@Override
protected void encode(ChannelHandlerContext ctx, Object msg, List<Object> out) throws Exception {
throw new Exception();
}
});
assertThrows(EncoderException.class, new Executable() {
@Override
public void execute() {
channel.writeOutbound(new Object());
}
});
}
@Test
public void testIntermediateWriteFailures() {
ChannelHandler encoder = new MessageToMessageEncoder<Object>() {
@Override
protected void encode(ChannelHandlerContext ctx, Object msg, List<Object> out) {
out.add(new Object());
out.add(msg);
}
};
final Exception firstWriteException = new Exception();
ChannelHandler writeThrower = new ChannelOutboundHandlerAdapter() {
private boolean firstWritten;
@Override
public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) {
if (firstWritten) {
ctx.write(msg, promise);
} else {
firstWritten = true;
promise.setFailure(firstWriteException);
}
}
};
EmbeddedChannel channel = new EmbeddedChannel(writeThrower, encoder);
Object msg = new Object();
ChannelFuture write = channel.writeAndFlush(msg);
assertSame(firstWriteException, write.cause());
assertSame(msg, channel.readOutbound());
assertFalse(channel.finish());
}
}
Source
Frequently Asked Questions
What is the MessageToMessageEncoderTest class?
MessageToMessageEncoderTest is a class in the netty codebase, defined in codec-base/src/test/java/io/netty/handler/codec/MessageToMessageEncoderTest.java.
Where is MessageToMessageEncoderTest defined?
MessageToMessageEncoderTest is defined in codec-base/src/test/java/io/netty/handler/codec/MessageToMessageEncoderTest.java at line 33.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free