From 6ecb3fbbf9e33780e90ac090d527c5b87fc8d3b1 Mon Sep 17 00:00:00 2001 From: chenhaibo Date: Thu, 3 Feb 2022 13:19:22 +0800 Subject: [PATCH] add utest --- trunk/src/utest/srs_utest_http.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/trunk/src/utest/srs_utest_http.cpp b/trunk/src/utest/srs_utest_http.cpp index e5de7dd0dd..c32fa77ac7 100644 --- a/trunk/src/utest/srs_utest_http.cpp +++ b/trunk/src/utest/srs_utest_http.cpp @@ -143,6 +143,16 @@ string mock_http_response2(int status, string content) return ss.str(); } +string mock_http_response3(int status, string content) +{ + stringstream ss; + ss << "HTTP/1.1 " << status << " " << srs_generate_http_status_text(status) << "\r\n" + << "Server:" << "\r\n" + << "\r\n" + << content; + return ss.str(); +} + bool is_string_contain(string substr, string str) { return (string::npos != str.find(substr)); @@ -528,6 +538,17 @@ VOID TEST(ProtocolHTTPTest, ClientRequest) EXPECT_STREQ("Hello, world!", res.c_str()); srs_freep(msg); } + + // Normal case, with empty server. + if(true) { + MockBufferIO io; io.append(mock_http_response3(200, "Hello, world!")); + SrsHttpParser hp; HELPER_ASSERT_SUCCESS(hp.initialize(HTTP_RESPONSE)); + ISrsHttpMessage* msg = NULL; HELPER_ASSERT_SUCCESS(hp.parse_message(&io, &msg)); + string res; HELPER_ASSERT_SUCCESS(msg->body_read_all(res)); + EXPECT_EQ(200, msg->status_code()); + EXPECT_STREQ("Hello, world!", res.c_str()); + srs_freep(msg); + } } VOID TEST(ProtocolHTTPTest, ResponseHTTPError)