Add message::need_eof

This commit is contained in:
Vinnie Falco
2017-10-25 18:41:04 -07:00
parent 5c14ab9f7c
commit 1754d5427d
4 changed files with 163 additions and 0 deletions
+106
View File
@@ -367,6 +367,111 @@ public:
BEAST_EXPECT(h.reason() == "Not Found");
}
void
testNeedEof()
{
{
request<empty_body> m;
m.version(10);
m.keep_alive(false);
BEAST_EXPECT(m.need_eof());
m.keep_alive(true);
BEAST_EXPECT(! m.need_eof());
m.version(11);
m.keep_alive(false);
BEAST_EXPECT(m.need_eof());
m.keep_alive(true);
BEAST_EXPECT(! m.need_eof());
}
{
response<empty_body> m;
m.result(status::ok);
m.version(10);
m.keep_alive(false);
BEAST_EXPECT(! m.has_content_length());
BEAST_EXPECT(! m.chunked());
m.result(status::no_content);
BEAST_EXPECT(m.need_eof());
m.result(status::not_modified);
BEAST_EXPECT(m.need_eof());
m.result(status::continue_);
BEAST_EXPECT(m.need_eof());
m.result(status::switching_protocols);
BEAST_EXPECT(m.need_eof());
m.result(status::ok);
BEAST_EXPECT(m.need_eof());
m.version(10);
m.keep_alive(true);
BEAST_EXPECT(! m.has_content_length());
BEAST_EXPECT(! m.chunked());
m.result(status::no_content);
BEAST_EXPECT(! m.need_eof());
m.result(status::not_modified);
BEAST_EXPECT(! m.need_eof());
m.result(status::continue_);
BEAST_EXPECT(! m.need_eof());
m.result(status::switching_protocols);
BEAST_EXPECT(! m.need_eof());
m.result(status::ok);
BEAST_EXPECT(m.need_eof());
m.set(field::content_length, "1");
BEAST_EXPECT(! m.need_eof());
}
{
response<empty_body> m;
m.result(status::ok);
m.version(11);
m.keep_alive(false);
BEAST_EXPECT(! m.has_content_length());
BEAST_EXPECT(! m.chunked());
m.result(status::no_content);
BEAST_EXPECT(m.need_eof());
m.result(status::not_modified);
BEAST_EXPECT(m.need_eof());
m.result(status::continue_);
BEAST_EXPECT(m.need_eof());
m.result(status::switching_protocols);
BEAST_EXPECT(m.need_eof());
m.result(status::ok);
BEAST_EXPECT(m.need_eof());
m.chunked(true);
BEAST_EXPECT(m.need_eof());
m.content_length(1);
BEAST_EXPECT(m.need_eof());
}
{
response<empty_body> m;
m.result(status::ok);
m.version(11);
m.keep_alive(true);
BEAST_EXPECT(! m.has_content_length());
BEAST_EXPECT(! m.chunked());
m.result(status::no_content);
BEAST_EXPECT(! m.need_eof());
m.result(status::not_modified);
BEAST_EXPECT(! m.need_eof());
m.result(status::continue_);
BEAST_EXPECT(! m.need_eof());
m.result(status::switching_protocols);
BEAST_EXPECT(! m.need_eof());
m.result(status::ok);
BEAST_EXPECT(m.need_eof());
m.chunked(true);
BEAST_EXPECT(! m.need_eof());
m.content_length(1);
BEAST_EXPECT(! m.need_eof());
}
}
void
run() override
{
@@ -377,6 +482,7 @@ public:
testMethod();
testStatus();
testReason();
testNeedEof();
}
};