From 4758a284d7b6d2435a0dc264955b5c2c712b9c2b Mon Sep 17 00:00:00 2001 From: winlin Date: Sat, 14 Dec 2019 10:12:25 +0800 Subject: [PATCH] Add test for http status. --- trunk/src/protocol/srs_http_stack.cpp | 8 +++----- trunk/src/utest/srs_utest_http.cpp | 8 +++++++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/trunk/src/protocol/srs_http_stack.cpp b/trunk/src/protocol/srs_http_stack.cpp index 3f4db8559..2f4e6dcb8 100644 --- a/trunk/src/protocol/srs_http_stack.cpp +++ b/trunk/src/protocol/srs_http_stack.cpp @@ -99,9 +99,9 @@ string srs_generate_http_status_text(int status) // permits a body. See RFC2616, section 4.4. bool srs_go_http_body_allowd(int status) { - if (status >= 100 && status <= 199) { + if (status >= SRS_CONSTS_HTTP_Continue && status < SRS_CONSTS_HTTP_OK) { return false; - } else if (status == 204 || status == 304) { + } else if (status == SRS_CONSTS_HTTP_NoContent || status == SRS_CONSTS_HTTP_NotModified) { return false; } @@ -116,9 +116,7 @@ bool srs_go_http_body_allowd(int status) // returns "application/octet-stream". string srs_go_http_detect(char* data, int size) { - // detect only when data specified. - if (data) { - } + // TODO: Implement the content detecting. return "application/octet-stream"; // fallback } diff --git a/trunk/src/utest/srs_utest_http.cpp b/trunk/src/utest/srs_utest_http.cpp index 18bd42360..9da963ef4 100644 --- a/trunk/src/utest/srs_utest_http.cpp +++ b/trunk/src/utest/srs_utest_http.cpp @@ -24,8 +24,14 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include -VOID TEST(ProtoStackTest, StatusCode2Text) +VOID TEST(ProtocolHTTPTest, StatusCode2Text) { EXPECT_STREQ(SRS_CONSTS_HTTP_OK_str, srs_generate_http_status_text(SRS_CONSTS_HTTP_OK).c_str()); EXPECT_STREQ("Status Unknown", srs_generate_http_status_text(999).c_str()); + + EXPECT_FALSE(srs_go_http_body_allowd(SRS_CONSTS_HTTP_Continue)); + EXPECT_FALSE(srs_go_http_body_allowd(SRS_CONSTS_HTTP_OK-1)); + EXPECT_FALSE(srs_go_http_body_allowd(SRS_CONSTS_HTTP_NoContent)); + EXPECT_FALSE(srs_go_http_body_allowd(SRS_CONSTS_HTTP_NotModified)); + EXPECT_TRUE(srs_go_http_body_allowd(SRS_CONSTS_HTTP_OK)); }