From a1f13e17dbe266ab3baa9a26979b60a0cf8af42e Mon Sep 17 00:00:00 2001 From: skyguard1 Date: Wed, 21 Jul 2021 20:31:14 +0800 Subject: [PATCH] Add StringDecoder test (#11496) Motivation: There is no test case of `StringDecoder` here Modification: Need to add `StringDecoder` test case Result: Added test case of `StringDecoder` Signed-off-by: xingrufei Co-authored-by: xingrufei Co-authored-by: Norman Maurer --- .../codec/string/StringDecoderTest.java | 42 +++++++++++++++++++ .../codec/string/StringEncoderTest.java | 3 ++ 2 files changed, 45 insertions(+) create mode 100644 codec/src/test/java/io/netty/handler/codec/string/StringDecoderTest.java diff --git a/codec/src/test/java/io/netty/handler/codec/string/StringDecoderTest.java b/codec/src/test/java/io/netty/handler/codec/string/StringDecoderTest.java new file mode 100644 index 0000000000..f0da531fb9 --- /dev/null +++ b/codec/src/test/java/io/netty/handler/codec/string/StringDecoderTest.java @@ -0,0 +1,42 @@ +/* + * Copyright 2021 The Netty Project + * + * The Netty Project licenses this file to you under the Apache License, + * version 2.0 (the "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at: + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ +package io.netty.handler.codec.string; + +import io.netty.buffer.ByteBuf; +import io.netty.buffer.Unpooled; +import io.netty.channel.embedded.EmbeddedChannel; +import io.netty.util.CharsetUtil; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.assertNull; + +public class StringDecoderTest { + + @Test + public void testDecode() { + String msg = "abc123"; + ByteBuf byteBuf = Unpooled.copiedBuffer(msg, CharsetUtil.UTF_8); + EmbeddedChannel channel = new EmbeddedChannel(new StringDecoder()); + assertTrue(channel.writeInbound(byteBuf)); + String result = channel.readInbound(); + assertEquals(msg, result); + assertNull(channel.readInbound()); + assertFalse(channel.finish()); + } +} diff --git a/codec/src/test/java/io/netty/handler/codec/string/StringEncoderTest.java b/codec/src/test/java/io/netty/handler/codec/string/StringEncoderTest.java index ba9b023cce..f0309b837d 100644 --- a/codec/src/test/java/io/netty/handler/codec/string/StringEncoderTest.java +++ b/codec/src/test/java/io/netty/handler/codec/string/StringEncoderTest.java @@ -21,6 +21,8 @@ import io.netty.util.CharsetUtil; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertFalse; + public class StringEncoderTest { @Test @@ -35,5 +37,6 @@ public class StringEncoderTest { Assertions.assertArrayEquals(msg.getBytes(CharsetUtil.UTF_8), data); Assertions.assertNull(channel.readOutbound()); buf.release(); + assertFalse(channel.finish()); } }