From ea96e414caf0a624c5aeaf7bb8567a61753f520e Mon Sep 17 00:00:00 2001 From: winlin Date: Fri, 8 Nov 2019 09:26:57 +0800 Subject: [PATCH] Cover protocol stack RTMP. 3.0.63 --- trunk/src/utest/srs_utest_protostack.cpp | 31 ++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/trunk/src/utest/srs_utest_protostack.cpp b/trunk/src/utest/srs_utest_protostack.cpp index 6f80d7901..035f544d8 100644 --- a/trunk/src/utest/srs_utest_protostack.cpp +++ b/trunk/src/utest/srs_utest_protostack.cpp @@ -414,3 +414,34 @@ VOID TEST(ProtoStackTest, DecodeMessages) } } +VOID TEST(ProtoStackTest, OnDecodeMessages) +{ + srs_error_t err; + + vector bytes; + + if (true) { + MockBufferIO io; + SrsProtocol p(&io); + + SrsSetChunkSizePacket* pkt = new SrsSetChunkSizePacket(); + pkt->chunk_size = 0; + + HELPER_EXPECT_SUCCESS(p.send_and_free_packet(pkt, 1)); + bytes.assign(io.out_buffer.bytes(), io.out_buffer.bytes() + io.out_buffer.length()); + } + + if (true) { + MockBufferIO io; + SrsProtocol p(&io); + + // Always response ACK message. + HELPER_EXPECT_SUCCESS(p.set_in_window_ack_size(1)); + + SrsCommonMessage* msg; + io.in_buffer.append(bytes.data(), bytes.size()); + HELPER_EXPECT_FAILED(p.recv_message(&msg)); + srs_freep(msg); + } +} +