1
Я пишу модульное тестирование для моего приложения с помощью EmbeddedChannel
:EmbeddedChannel и channelActive
@Test
public void sendMessage() {
CurrentMessage currentMessage = new CurrentMessage();
currentMessage.setCommand(CommandEnum.CURRENT_MEASUREMENT_REQUEST);
EmbeddedChannel channel = new EmbeddedChannel();
channel.pipeline().addLast(new LoggingHandler(LogLevel.TRACE));
channel.pipeline().addLast(new ClientEventHandler(currentMessage));
assertTrue(channel.isActive());
}
Но мой channelActive
из ClientEventHandler
это не вызывается:
@Override
public void channelActive(ChannelHandlerContext ctx) throws Exception {
IConverter converter = CommandUtil.commands.get(message.getCommand().getHexValue());
byte[] byteMessage = converter.encode(message);
logger.info("Sending byte array message: " + byteMessage);
ctx.writeAndFlush(Unpooled.copiedBuffer(byteMessage));
}
ли EmbeddedChannel
поддерживает channelActive
или channelRegister
?