Merge "libutils: sharedbuffer test - expect greatness!" am: 9dd80b6b04

Original change: https://android-review.googlesource.com/c/platform/system/core/+/1688812

Change-Id: Id8d62f4aca69d9519a303e00a89c33a791028d5f
This commit is contained in:
Steven Moreland 2021-04-28 21:21:12 +00:00 committed by Automerger Merge Worker
commit 246739cc61
1 changed files with 25 additions and 4 deletions

View File

@ -32,10 +32,25 @@ TEST(SharedBufferTest, alloc_death) {
EXPECT_DEATH(android::SharedBuffer::alloc(SIZE_MAX - sizeof(android::SharedBuffer)), "");
}
TEST(SharedBufferTest, alloc_null) {
// Big enough to fail, not big enough to abort.
TEST(SharedBufferTest, alloc_max) {
SKIP_WITH_HWASAN; // hwasan has a 2GiB allocation limit.
ASSERT_EQ(nullptr, android::SharedBuffer::alloc(SIZE_MAX / 2));
android::SharedBuffer* buf =
android::SharedBuffer::alloc(SIZE_MAX - sizeof(android::SharedBuffer) - 1);
if (buf != nullptr) {
EXPECT_NE(nullptr, buf->data());
buf->release();
}
}
TEST(SharedBufferTest, alloc_big) {
SKIP_WITH_HWASAN; // hwasan has a 2GiB allocation limit.
android::SharedBuffer* buf = android::SharedBuffer::alloc(SIZE_MAX / 2);
if (buf != nullptr) {
EXPECT_NE(nullptr, buf->data());
buf->release();
}
}
TEST(SharedBufferTest, alloc_zero_size) {
@ -56,7 +71,13 @@ TEST(SharedBufferTest, editResize_null) {
// Big enough to fail, not big enough to abort.
SKIP_WITH_HWASAN; // hwasan has a 2GiB allocation limit.
android::SharedBuffer* buf = android::SharedBuffer::alloc(10);
ASSERT_EQ(nullptr, buf->editResize(SIZE_MAX / 2));
android::SharedBuffer* buf2 = buf->editResize(SIZE_MAX / 2);
if (buf2 == nullptr) {
buf->release();
} else {
EXPECT_NE(nullptr, buf2->data());
buf2->release();
}
}
TEST(SharedBufferTest, editResize_zero_size) {