tests: Added tests for short buffers (they duplicate the progressive truncation test, but it's better to have explicit tests)

git-svn-id: http://pugixml.googlecode.com/svn/trunk@632 99668b35-9821-0410-8761-19e4c4f06640
This commit is contained in:
arseny.kapoulkine 2010-08-09 11:24:26 +00:00
parent 241b998fa3
commit 8d39e54f49

View File

@ -760,3 +760,37 @@ TEST(document_progressive_truncation)
delete[] original_data;
}
TEST(document_load_buffer_short)
{
char* data = new char[4];
memcpy(data, "abcd", 4);
xml_document doc;
CHECK(doc.load_buffer(data, 4));
CHECK(doc.load_buffer(data + 1, 3));
CHECK(doc.load_buffer(data + 2, 2));
CHECK(doc.load_buffer(data + 3, 1));
CHECK(doc.load_buffer(data + 4, 0));
CHECK(doc.load_buffer(0, 0));
delete[] data;
}
TEST(document_load_buffer_inplace_short)
{
char* data = new char[4];
memcpy(data, "abcd", 4);
xml_document doc;
CHECK(doc.load_buffer_inplace(data, 4));
CHECK(doc.load_buffer_inplace(data + 1, 3));
CHECK(doc.load_buffer_inplace(data + 2, 2));
CHECK(doc.load_buffer_inplace(data + 3, 1));
CHECK(doc.load_buffer_inplace(data + 4, 0));
CHECK(doc.load_buffer_inplace(0, 0));
delete[] data;
}