[tests] Add utests for HTTP 200 with no data

The implementation should return a valid empty string.
This commit is contained in:
Thiago Marcos P. Santos
2016-02-22 19:43:25 +02:00
parent d836638407
commit 2b44c4b096
2 changed files with 29 additions and 0 deletions

View File

@@ -84,6 +84,31 @@ TEST_F(Storage, HTTPTile404) {
loop.run();
}
TEST_F(Storage, HTTP200EmptyData) {
SCOPED_TEST(HTTP200EmptyData)
using namespace mbgl;
util::RunLoop loop;
OnlineFileSource fs;
std::unique_ptr<FileRequest> req = fs.request({ Resource::Unknown, "http://127.0.0.1:3000/empty-data" },
[&](Response res) {
req.reset();
EXPECT_TRUE(util::ThreadContext::currentlyOn(util::ThreadType::Main));
EXPECT_FALSE(res.noContent);
EXPECT_FALSE(bool(res.error));
EXPECT_EQ(*res.data, std::string());
EXPECT_FALSE(bool(res.expires));
EXPECT_FALSE(bool(res.modified));
EXPECT_FALSE(bool(res.etag));
loop.stop();
HTTP200EmptyData.finish();
});
loop.run();
}
TEST_F(Storage, HTTP204) {
SCOPED_TEST(HTTP204)

View File

@@ -84,6 +84,10 @@ app.get('/revalidate-etag', function(req, res) {
revalidateEtagCounter++;
});
app.get('/empty-data', function(req, res) {
res.status(200).send();
});
app.get('/no-content', function(req, res) {
res.status(204).send();
});