pull/36773/head
Craig Tiller 10 months ago
commit f768c25478
  1. 20
      test/core/resource_quota/arena_test.cc

@ -29,6 +29,7 @@
#include <vector>
#include "absl/strings/str_join.h"
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include <grpc/support/sync.h>
@ -40,6 +41,8 @@
#include "src/core/lib/resource_quota/resource_quota.h"
#include "test/core/test_util/test_config.h"
using testing::StrictMock;
namespace grpc_core {
struct AllocShape {
@ -289,6 +292,23 @@ TEST(ArenaTest, FooContext) {
EXPECT_EQ(*arena->GetContext<Foo>()->p, 42);
}
class MockArenaFactory : public ArenaFactory {
public:
MockArenaFactory()
: ArenaFactory(
ResourceQuota::Default()->memory_quota()->CreateMemoryAllocator(
"test")) {}
MOCK_METHOD(RefCountedPtr<Arena>, MakeArena, (), (override));
MOCK_METHOD(void, FinalizeArena, (Arena * arena), (override));
};
TEST(ArenaTest, FinalizeArenaIsCalled) {
auto factory = MakeRefCounted<StrictMock<MockArenaFactory>>();
auto arena = Arena::Create(1, factory);
EXPECT_CALL(*factory, FinalizeArena(arena.get()));
arena.reset();
}
} // namespace grpc_core
int main(int argc, char* argv[]) {

Loading…
Cancel
Save