1 /* 2 * Copyright 2022 The WebRTC Project Authors. All rights reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 #ifndef API_TASK_QUEUE_TEST_MOCK_TASK_QUEUE_BASE_H_ 12 #define API_TASK_QUEUE_TEST_MOCK_TASK_QUEUE_BASE_H_ 13 14 #include "absl/functional/any_invocable.h" 15 #include "api/task_queue/task_queue_base.h" 16 #include "api/units/time_delta.h" 17 #include "test/gmock.h" 18 19 namespace webrtc { 20 21 class MockTaskQueueBase : public TaskQueueBase { 22 public: 23 MOCK_METHOD(void, Delete, (), (override)); 24 MOCK_METHOD(void, PostTask, (absl::AnyInvocable<void() &&>), (override)); 25 MOCK_METHOD(void, 26 PostDelayedTask, 27 (absl::AnyInvocable<void() &&>, TimeDelta), 28 (override)); 29 MOCK_METHOD(void, 30 PostDelayedHighPrecisionTask, 31 (absl::AnyInvocable<void() &&>, TimeDelta), 32 (override)); 33 }; 34 35 } // namespace webrtc 36 37 #endif // API_TASK_QUEUE_TEST_MOCK_TASK_QUEUE_BASE_H_ 38