Index: content/browser/renderer_host/media/audio_renderer_host_unittest.cc |
diff --git a/content/browser/renderer_host/media/audio_renderer_host_unittest.cc b/content/browser/renderer_host/media/audio_renderer_host_unittest.cc |
index 41d6ffb367814d179de470a8976fbf5d5f95499b..48b70b8ee5cb764a2e886ed991c797940fd41025 100644 |
--- a/content/browser/renderer_host/media/audio_renderer_host_unittest.cc |
+++ b/content/browser/renderer_host/media/audio_renderer_host_unittest.cc |
@@ -25,6 +25,7 @@ |
#include "content/public/test/mock_render_process_host.h" |
#include "content/public/test/test_browser_context.h" |
#include "content/public/test/test_browser_thread_bundle.h" |
+#include "content/test/mock_audio_stream_registry.h" |
#include "ipc/ipc_message_utils.h" |
#include "media/audio/fake_audio_log_factory.h" |
#include "media/audio/fake_audio_manager.h" |
@@ -63,7 +64,6 @@ void ValidateRenderFrameId(int render_process_id, |
base::Bind(callback, frame_exists)); |
} |
- |
class MockAudioMirroringManager : public AudioMirroringManager { |
public: |
MockAudioMirroringManager() {} |
@@ -127,11 +127,13 @@ class MockAudioRendererHost : public AudioRendererHost { |
public: |
MockAudioRendererHost(base::RunLoop* auth_run_loop, |
int render_process_id, |
+ AudioStreamRegistry* stream_registry, |
media::AudioManager* audio_manager, |
AudioMirroringManager* mirroring_manager, |
MediaStreamManager* media_stream_manager, |
const std::string& salt) |
: AudioRendererHost(render_process_id, |
+ stream_registry, |
audio_manager, |
mirroring_manager, |
media_stream_manager, |
@@ -235,13 +237,15 @@ class AudioRendererHostTest : public testing::Test { |
audio_manager_(base::MakeUnique<FakeAudioManagerWithAssociations>( |
base::ThreadTaskRunnerHandle::Get(), |
log_factory.get())), |
- render_process_host_(&browser_context_, &auth_run_loop_) { |
+ render_process_host_(&browser_context_, &auth_run_loop_), |
+ stream_registry_(render_process_host_.GetID()) { |
base::CommandLine::ForCurrentProcess()->AppendSwitch( |
switches::kUseFakeDeviceForMediaStream); |
media_stream_manager_.reset(new MediaStreamManager(audio_manager_.get())); |
host_ = new MockAudioRendererHost( |
- &auth_run_loop_, render_process_host_.GetID(), audio_manager_.get(), |
- &mirroring_manager_, media_stream_manager_.get(), kSalt); |
+ &auth_run_loop_, render_process_host_.GetID(), &stream_registry_, |
+ audio_manager_.get(), &mirroring_manager_, media_stream_manager_.get(), |
+ kSalt); |
// Simulate IPC channel connected. |
host_->set_peer_process_for_testing(base::Process::Current()); |
@@ -340,6 +344,7 @@ class AudioRendererHostTest : public testing::Test { |
OnDeviceAuthorized(kStreamId, expected_device_status, _, _)); |
if (expected_device_status == media::OUTPUT_DEVICE_STATUS_OK) { |
+ EXPECT_CALL(stream_registry_, RegisterOutputStream(NotNull())); |
EXPECT_CALL(*host_.get(), WasNotifiedOfCreation(kStreamId, _)); |
EXPECT_CALL(mirroring_manager_, AddDiverter(render_process_host_.GetID(), |
kRenderFrameId, NotNull())) |
@@ -363,11 +368,13 @@ class AudioRendererHostTest : public testing::Test { |
expected_device_status == media::OUTPUT_DEVICE_STATUS_OK) |
host_->OnCreateStream(kStreamId, kRenderFrameId, params); |
- if (expected_device_status == media::OUTPUT_DEVICE_STATUS_OK) |
+ if (expected_device_status == media::OUTPUT_DEVICE_STATUS_OK) { |
// At some point in the future, a corresponding RemoveDiverter() call must |
// be made. |
+ EXPECT_CALL(stream_registry_, DeregisterOutputStream(NotNull())); |
EXPECT_CALL(mirroring_manager_, RemoveDiverter(NotNull())) |
.RetiresOnSaturation(); |
+ } |
SyncWithAudioThread(); |
} |
@@ -514,6 +521,7 @@ class AudioRendererHostTest : public testing::Test { |
MockAudioMirroringManager mirroring_manager_; |
base::RunLoop auth_run_loop_; |
MockRenderProcessHostWithSignaling render_process_host_; |
+ MockAudioStreamRegistry stream_registry_; |
scoped_refptr<MockAudioRendererHost> host_; |
DISALLOW_COPY_AND_ASSIGN(AudioRendererHostTest); |