Avoid using GlobalTaskQueueFactory for TaskQueueForTest

To remove global task factory, rtc::TaskQueue need to loose it's convenient constructor
TaskQueueForTest can be used instead in tests and keep the convenient constructor.

Also cleanup the TaskQueueForTest a bit:
move the class to webrtc namespace
add default constructor
disallow copy using language construct instead of macro
cleanup build dependencies
rename build target (to match move out of the rtc namespace)

Bug: webrtc:10284
Change-Id: I17fddf3f8d4f363df7d495c28a5b0a28abda1ba7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/127571
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27193}
diff --git a/rtc_base/task_queue_for_test.h b/rtc_base/task_queue_for_test.h
index 315f161..e578a61 100644
--- a/rtc_base/task_queue_for_test.h
+++ b/rtc_base/task_queue_for_test.h
@@ -11,19 +11,24 @@
 #ifndef RTC_BASE_TASK_QUEUE_FOR_TEST_H_
 #define RTC_BASE_TASK_QUEUE_FOR_TEST_H_
 
+#include <utility>
+
+#include "absl/strings/string_view.h"
 #include "rtc_base/checks.h"
-#include "rtc_base/constructor_magic.h"
 #include "rtc_base/event.h"
 #include "rtc_base/task_queue.h"
 #include "rtc_base/task_utils/to_queued_task.h"
 #include "rtc_base/thread_annotations.h"
 
-namespace rtc {
-namespace test {
-class RTC_LOCKABLE TaskQueueForTest : public TaskQueue {
+namespace webrtc {
+
+class RTC_LOCKABLE TaskQueueForTest : public rtc::TaskQueue {
  public:
-  using TaskQueue::TaskQueue;
-  ~TaskQueueForTest();
+  explicit TaskQueueForTest(absl::string_view name = "TestQueue",
+                            Priority priority = Priority::NORMAL);
+  TaskQueueForTest(const TaskQueueForTest&) = delete;
+  TaskQueueForTest& operator=(const TaskQueueForTest&) = delete;
+  ~TaskQueueForTest() = default;
 
   // A convenience, test-only method that blocks the current thread while
   // a task executes on the task queue.
@@ -34,11 +39,9 @@
   void SendTask(Closure* task) {
     RTC_DCHECK(!IsCurrent());
     rtc::Event event;
-    PostTask(webrtc::ToQueuedTask(
-        [&task]() {
-          RTC_CHECK_EQ(false, static_cast<webrtc::QueuedTask*>(task)->Run());
-        },
-        [&event]() { event.Set(); }));
+    PostTask(ToQueuedTask(
+        [&task] { RTC_CHECK_EQ(false, static_cast<QueuedTask*>(task)->Run()); },
+        [&event] { event.Set(); }));
     event.Wait(rtc::Event::kForever);
   }
 
@@ -48,15 +51,12 @@
   void SendTask(Closure&& task) {
     RTC_DCHECK(!IsCurrent());
     rtc::Event event;
-    PostTask(webrtc::ToQueuedTask(std::forward<Closure>(task),
-                                  [&event] { event.Set(); }));
+    PostTask(
+        ToQueuedTask(std::forward<Closure>(task), [&event] { event.Set(); }));
     event.Wait(rtc::Event::kForever);
   }
-
- private:
-  RTC_DISALLOW_COPY_AND_ASSIGN(TaskQueueForTest);
 };
-}  // namespace test
-}  // namespace rtc
+
+}  // namespace webrtc
 
 #endif  // RTC_BASE_TASK_QUEUE_FOR_TEST_H_