blob: b5ffef13515adf3b46d85f1f1ee3790a79792c15 [file] [log] [blame]
// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/connectivity/bluetooth/core/bt-host/public/pw_bluetooth_sapphire/internal/host/common/slab_allocator.h"
#include <gtest/gtest.h>
namespace bt {
namespace {
TEST(SlabAllocatorTest, NewBuffer) {
auto buffer = NewBuffer(kSmallBufferSize);
EXPECT_TRUE(buffer);
EXPECT_EQ(kSmallBufferSize, buffer->size());
buffer = NewBuffer(kSmallBufferSize / 2);
EXPECT_TRUE(buffer);
EXPECT_EQ(kSmallBufferSize / 2, buffer->size());
buffer = NewBuffer(kLargeBufferSize);
EXPECT_TRUE(buffer);
EXPECT_EQ(kLargeBufferSize, buffer->size());
buffer = NewBuffer(kLargeBufferSize / 2);
EXPECT_TRUE(buffer);
EXPECT_EQ(kLargeBufferSize / 2, buffer->size());
buffer = NewBuffer(kLargeBufferSize + 1);
EXPECT_TRUE(buffer);
EXPECT_EQ(kLargeBufferSize + 1, buffer->size());
buffer = NewBuffer(0);
EXPECT_TRUE(buffer);
EXPECT_EQ(0U, buffer->size());
}
} // namespace
} // namespace bt