Use DefaultTaskQueueFactory instead of Global in test RealTimeController
Bug: webrtc:10284
Change-Id: I1c285078a9aae42ca811144f42066980a7b155fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/132782
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27672}
diff --git a/test/time_controller/BUILD.gn b/test/time_controller/BUILD.gn
index 54b095c..252dca9 100644
--- a/test/time_controller/BUILD.gn
+++ b/test/time_controller/BUILD.gn
@@ -21,7 +21,7 @@
deps = [
"../../api/task_queue",
- "../../api/task_queue:global_task_queue_factory",
+ "../../api/task_queue:default_task_queue_factory",
"../../api/units:time_delta",
"../../api/units:timestamp",
"../../modules:module_api",
diff --git a/test/time_controller/real_time_controller.cc b/test/time_controller/real_time_controller.cc
index 4e01665..5e0044e 100644
--- a/test/time_controller/real_time_controller.cc
+++ b/test/time_controller/real_time_controller.cc
@@ -9,19 +9,20 @@
*/
#include "test/time_controller/real_time_controller.h"
-#include "api/task_queue/global_task_queue_factory.h"
-#include "rtc_base/event.h"
-#include "rtc_base/task_utils/to_queued_task.h"
+#include "api/task_queue/default_task_queue_factory.h"
#include "system_wrappers/include/sleep.h"
namespace webrtc {
+RealTimeController::RealTimeController()
+ : task_queue_factory_(CreateDefaultTaskQueueFactory()) {}
+
Clock* RealTimeController::GetClock() {
return Clock::GetRealTimeClock();
}
TaskQueueFactory* RealTimeController::GetTaskQueueFactory() {
- return &GlobalTaskQueueFactory();
+ return task_queue_factory_.get();
}
std::unique_ptr<ProcessThread> RealTimeController::CreateProcessThread(
diff --git a/test/time_controller/real_time_controller.h b/test/time_controller/real_time_controller.h
index 10c1b20..f2d73be 100644
--- a/test/time_controller/real_time_controller.h
+++ b/test/time_controller/real_time_controller.h
@@ -10,19 +10,29 @@
#ifndef TEST_TIME_CONTROLLER_REAL_TIME_CONTROLLER_H_
#define TEST_TIME_CONTROLLER_REAL_TIME_CONTROLLER_H_
+#include <functional>
#include <memory>
+#include "api/task_queue/task_queue_factory.h"
+#include "api/units/time_delta.h"
+#include "modules/utility/include/process_thread.h"
+#include "system_wrappers/include/clock.h"
#include "test/time_controller/time_controller.h"
namespace webrtc {
class RealTimeController : public TimeController {
public:
+ RealTimeController();
+
Clock* GetClock() override;
TaskQueueFactory* GetTaskQueueFactory() override;
std::unique_ptr<ProcessThread> CreateProcessThread(
const char* thread_name) override;
void Sleep(TimeDelta duration) override;
void InvokeWithControlledYield(std::function<void()> closure) override;
+
+ private:
+ std::unique_ptr<TaskQueueFactory> task_queue_factory_;
};
RealTimeController* GlobalRealTimeController();