集成GZIP压缩模块,支持对GZIP压缩的应答执行替换业务,并增加了单元测试用例。
This commit is contained in:
@@ -262,7 +262,7 @@ TEST_F(HttpConvertCompress, MonkeyToGzip)
|
||||
EXPECT_EQ(memcmp(uncompress_buf.data(), monkey, sizeof(monkey)), 0);
|
||||
}
|
||||
|
||||
TEST_F(HttpConvertCompress, MonkeyToGzipStrem)
|
||||
TEST_F(HttpConvertCompress, MonkeyToGzipStream)
|
||||
{
|
||||
unsigned frag_length = sizeof(monkey) / 2;
|
||||
|
||||
@@ -286,6 +286,34 @@ TEST_F(HttpConvertCompress, MonkeyToGzipStrem)
|
||||
EXPECT_EQ(memcmp(uncompress_buf.data(), monkey, sizeof(monkey)), 0);
|
||||
}
|
||||
|
||||
TEST_F(HttpConvertCompress, MonkeyToGzipStreamWithNullEnd)
|
||||
{
|
||||
unsigned frag_length = sizeof(monkey) / 2;
|
||||
|
||||
/* First frag */
|
||||
int ret = hf_content_compress_write(cv_compress_object, monkey, frag_length, buf, 0);
|
||||
ASSERT_EQ(ret, 0);
|
||||
|
||||
/* Last frag */
|
||||
ret = hf_content_compress_write(cv_compress_object, monkey + frag_length, sizeof(monkey) - frag_length, buf, 0);
|
||||
ASSERT_EQ(ret, 0);
|
||||
|
||||
/* End frag */
|
||||
ret = hf_content_compress_write(cv_compress_object, NULL, 0, buf, 1);
|
||||
ASSERT_EQ(ret, 0);
|
||||
|
||||
unsigned char * __raw_buf_ptr = evbuffer_pullup(buf, -1);
|
||||
size_t __raw_buf_length = evbuffer_get_length(buf);
|
||||
|
||||
ret = hf_content_uncompress_write(cv_uncompress_object, NULL, EV_HTTP_REQ_BODY_CONT,
|
||||
__raw_buf_ptr, __raw_buf_length);
|
||||
|
||||
ASSERT_TRUE(__raw_buf_ptr != NULL);
|
||||
ASSERT_EQ(ret, 1);
|
||||
EXPECT_EQ(uncompress_buf.size(), sizeof(monkey));
|
||||
EXPECT_EQ(memcmp(uncompress_buf.data(), monkey, sizeof(monkey)), 0);
|
||||
}
|
||||
|
||||
void tfe_stream_write_access_log(const struct tfe_stream * stream, int level, const char * fmt, ...)
|
||||
{
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user