// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef BASE_ALLOCATOR_DISPATCHER_TESTING_OBSERVER_MOCK_H_ #define BASE_ALLOCATOR_DISPATCHER_TESTING_OBSERVER_MOCK_H_ #include "testing/gmock/include/gmock/gmock.h" namespace base::allocator::dispatcher { class AllocationNotificationData; class FreeNotificationData; namespace testing { // ObserverMock is a small mock class based on GoogleMock. // It complies to the interface enforced by the dispatcher. The template // parameter serves only to create distinct types of observers if required. template struct ObserverMock { MOCK_METHOD(void, OnAllocation, (const AllocationNotificationData& notification_data), ()); MOCK_METHOD(void, OnFree, (const FreeNotificationData& notification_data), ()); }; } // namespace testing } // namespace base::allocator::dispatcher #endif // BASE_ALLOCATOR_DISPATCHER_TESTING_OBSERVER_MOCK_H_