Fix build errors of RTCAudioDeviceTests
This happend because sdk_unittests is not built on arm/arm64 iOS build.
Bug: webrtc:11022
Change-Id: I8f9adfd48e11c8512c27992804cc9b69dff15ded
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/156100
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29407}
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index fa29b8f..2c8a114 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -1090,6 +1090,7 @@
":videosource_objc",
":videotoolbox_objc",
"../api:scoped_refptr",
+ "../api/task_queue:default_task_queue_factory",
"../api/video:video_frame_i420",
"../common_video",
"../media:rtc_media_base",
diff --git a/sdk/objc/unittests/RTCAudioDevice_xctest.mm b/sdk/objc/unittests/RTCAudioDevice_xctest.mm
index 7ecc43a..10d3994 100644
--- a/sdk/objc/unittests/RTCAudioDevice_xctest.mm
+++ b/sdk/objc/unittests/RTCAudioDevice_xctest.mm
@@ -9,11 +9,14 @@
*/
#import <XCTest/XCTest.h>
+
+#include "api/task_queue/default_task_queue_factory.h"
+
#import "sdk/objc/components/audio/RTCAudioSession+Private.h"
#import "sdk/objc/native/api/audio_device_module.h"
#import "sdk/objc/native/src/audio/audio_device_ios.h"
-@interface RTCAudioDeviceTests: XCTestCase {
+@interface RTCAudioDeviceTests : XCTestCase {
rtc::scoped_refptr<webrtc::AudioDeviceModule> _audioDeviceModule;
std::unique_ptr<webrtc::ios_adm::AudioDeviceIOS> _audio_device;
}
@@ -35,9 +38,7 @@
NSError *error = nil;
[self.audioSession lockForConfiguration];
- [self.audioSession setCategory:AVAudioSessionCategoryPlayAndRecord
- withOptions:0
- error:&error];
+ [self.audioSession setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:0 error:&error];
XCTAssertNil(error);
[self.audioSession setMode:AVAudioSessionModeVoiceChat error:&error];
@@ -82,8 +83,10 @@
[self.audioSession.category isEqual:AVAudioSessionCategoryPlayback]);
XCTAssertEqual(AVAudioSessionModeVoiceChat, self.audioSession.mode);
+ std::unique_ptr<webrtc::TaskQueueFactory> task_queue_factory =
+ webrtc::CreateDefaultTaskQueueFactory();
std::unique_ptr<webrtc::AudioDeviceBuffer> audio_buffer;
- audio_buffer.reset(new webrtc::AudioDeviceBuffer());
+ audio_buffer.reset(new webrtc::AudioDeviceBuffer(task_queue_factory.get()));
_audio_device->AttachAudioBuffer(audio_buffer.get());
XCTAssertEqual(webrtc::AudioDeviceGeneric::InitStatus::OK, _audio_device->Init());
XCTAssertEqual(0, _audio_device->InitPlayout());