Migrate remaining webrtc usage of TaskQueueBase to absl::AnyInvocable
Bug: webrtc:14245
Change-Id: I8de2c23da5fbdfc0b1efbbe07fb6e8de744424a3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/268191
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37565}
diff --git a/api/metronome/test/BUILD.gn b/api/metronome/test/BUILD.gn
index 160b45c..0ea13b3 100644
--- a/api/metronome/test/BUILD.gn
+++ b/api/metronome/test/BUILD.gn
@@ -18,7 +18,6 @@
"..:metronome",
"../..:priority",
"../..:sequence_checker",
- "../../../api/task_queue:to_queued_task",
"../../../rtc_base:macromagic",
"../../../rtc_base:rtc_event",
"../../../rtc_base:rtc_task_queue",
diff --git a/api/metronome/test/fake_metronome.cc b/api/metronome/test/fake_metronome.cc
index 7813a3d..cb471b9 100644
--- a/api/metronome/test/fake_metronome.cc
+++ b/api/metronome/test/fake_metronome.cc
@@ -13,7 +13,6 @@
#include "api/priority.h"
#include "api/sequence_checker.h"
#include "api/task_queue/task_queue_factory.h"
-#include "api/task_queue/to_queued_task.h"
#include "api/units/time_delta.h"
#include "rtc_base/event.h"
#include "rtc_base/task_utils/repeating_task.h"
@@ -41,8 +40,7 @@
void ForcedTickMetronome::Tick() {
for (auto* listener : listeners_) {
- listener->OnTickTaskQueue()->PostTask(
- ToQueuedTask([listener] { listener->OnTick(); }));
+ listener->OnTickTaskQueue()->PostTask([listener] { listener->OnTick(); });
}
}
@@ -66,7 +64,7 @@
return TimeDelta::PlusInfinity();
for (auto* listener : listeners_) {
listener->OnTickTaskQueue()->PostTask(
- ToQueuedTask([listener] { listener->OnTick(); }));
+ [listener] { listener->OnTick(); });
}
return tick_period_;
});
diff --git a/api/task_queue/test/BUILD.gn b/api/task_queue/test/BUILD.gn
index fa82dd0..25f7ed0 100644
--- a/api/task_queue/test/BUILD.gn
+++ b/api/task_queue/test/BUILD.gn
@@ -13,6 +13,8 @@
sources = [ "mock_task_queue_base.h" ]
deps = [
"../../../api/task_queue:task_queue",
+ "../../../api/units:time_delta",
"../../../test:test_support",
]
+ absl_deps = [ "//third_party/abseil-cpp/absl/functional:any_invocable" ]
}
diff --git a/api/task_queue/test/mock_task_queue_base.h b/api/task_queue/test/mock_task_queue_base.h
index 68c5c05..2e99be7 100644
--- a/api/task_queue/test/mock_task_queue_base.h
+++ b/api/task_queue/test/mock_task_queue_base.h
@@ -11,20 +11,25 @@
#ifndef API_TASK_QUEUE_TEST_MOCK_TASK_QUEUE_BASE_H_
#define API_TASK_QUEUE_TEST_MOCK_TASK_QUEUE_BASE_H_
-#include <memory>
-
+#include "absl/functional/any_invocable.h"
#include "api/task_queue/task_queue_base.h"
+#include "api/units/time_delta.h"
#include "test/gmock.h"
namespace webrtc {
class MockTaskQueueBase : public TaskQueueBase {
public:
- MOCK_METHOD0(Delete, void());
- MOCK_METHOD1(PostTask, void(std::unique_ptr<QueuedTask>));
- MOCK_METHOD2(PostDelayedTask, void(std::unique_ptr<QueuedTask>, uint32_t));
- MOCK_METHOD2(PostDelayedHighPrecisionTask,
- void(std::unique_ptr<QueuedTask>, uint32_t));
+ MOCK_METHOD(void, Delete, (), (override));
+ MOCK_METHOD(void, PostTask, (absl::AnyInvocable<void() &&>), (override));
+ MOCK_METHOD(void,
+ PostDelayedTask,
+ (absl::AnyInvocable<void() &&>, TimeDelta),
+ (override));
+ MOCK_METHOD(void,
+ PostDelayedHighPrecisionTask,
+ (absl::AnyInvocable<void() &&>, TimeDelta),
+ (override));
};
} // namespace webrtc