Stop using DEPRECATED_SingleThreadedTaskQueueForTesting in call tests

This is practiaclly a reland of the
https://webrtc-review.googlesource.com/c/src/+/157896
except that video multi stream tests are still using the deprecated TaskQueue
(see https://webrtc-review.googlesource.com/c/src/+/159280)

Bug: webrtc:10933
Change-Id: Ie715345924f9dd2d7dd52c99de3ea595b6fad5ae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159699
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29794}
diff --git a/test/BUILD.gn b/test/BUILD.gn
index 49c76b0..2f7f2ba 100644
--- a/test/BUILD.gn
+++ b/test/BUILD.gn
@@ -748,7 +748,6 @@
     ":fake_video_codecs",
     ":fileutils",
     ":rtp_test_utils",
-    ":single_threaded_task_queue",
     ":test_support",
     ":video_test_common",
     "../api:rtp_headers",
diff --git a/test/call_test.cc b/test/call_test.cc
index d83f87a..9f26cc6 100644
--- a/test/call_test.cc
+++ b/test/call_test.cc
@@ -56,7 +56,9 @@
       num_flexfec_streams_(0),
       audio_decoder_factory_(CreateBuiltinAudioDecoderFactory()),
       audio_encoder_factory_(CreateBuiltinAudioEncoderFactory()),
-      task_queue_("CallTestTaskQueue") {}
+      task_queue_(task_queue_factory_->CreateTaskQueue(
+          "CallTestTaskQueue",
+          TaskQueueFactory::Priority::NORMAL)) {}
 
 CallTest::~CallTest() = default;
 
@@ -84,7 +86,7 @@
 }
 
 void CallTest::RunBaseTest(BaseTest* test) {
-  SendTask(RTC_FROM_HERE, &task_queue_, [this, test]() {
+  SendTask(RTC_FROM_HERE, task_queue(), [this, test]() {
     num_video_streams_ = test->GetNumVideoStreams();
     num_audio_streams_ = test->GetNumAudioStreams();
     num_flexfec_streams_ = test->GetNumFlexfecStreams();
@@ -123,9 +125,9 @@
       CreateReceiverCall(recv_config);
     }
     test->OnCallsCreated(sender_call_.get(), receiver_call_.get());
-    receive_transport_ = test->CreateReceiveTransport(&task_queue_);
+    receive_transport_ = test->CreateReceiveTransport(task_queue());
     send_transport_ =
-        test->CreateSendTransport(&task_queue_, sender_call_.get());
+        test->CreateSendTransport(task_queue(), sender_call_.get());
 
     if (test->ShouldCreateReceivers()) {
       send_transport_->SetReceiver(receiver_call_->Receiver());
@@ -184,7 +186,7 @@
 
   test->PerformTest();
 
-  SendTask(RTC_FROM_HERE, &task_queue_, [this, test]() {
+  SendTask(RTC_FROM_HERE, task_queue(), [this, test]() {
     Stop();
     test->OnStreamsStopped();
     DestroyStreams();
diff --git a/test/call_test.h b/test/call_test.h
index 6224a6e..ba9740d 100644
--- a/test/call_test.h
+++ b/test/call_test.h
@@ -30,7 +30,6 @@
 #include "test/fake_vp8_encoder.h"
 #include "test/frame_generator_capturer.h"
 #include "test/rtp_rtcp_observer.h"
-#include "test/single_threaded_task_queue.h"
 
 namespace webrtc {
 namespace test {
@@ -174,7 +173,7 @@
   void SetVideoEncoderConfig(const VideoEncoderConfig& config);
   VideoSendStream* GetVideoSendStream();
   FlexfecReceiveStream::Config* GetFlexFecConfig();
-  TaskQueueBase* task_queue() { return &task_queue_; }
+  TaskQueueBase* task_queue() { return task_queue_.get(); }
 
   Clock* const clock_;
 
@@ -230,7 +229,7 @@
   void AddRtpExtensionByUri(const std::string& uri,
                             std::vector<RtpExtension>* extensions) const;
 
-  DEPRECATED_SingleThreadedTaskQueueForTesting task_queue_;
+  std::unique_ptr<TaskQueueBase, TaskQueueDeleter> task_queue_;
   std::vector<RtpExtension> rtp_extensions_;
   rtc::scoped_refptr<AudioProcessing> apm_send_;
   rtc::scoped_refptr<AudioProcessing> apm_recv_;