| Index: content/browser/renderer_host/media/media_stream_manager_unittest.cc
|
| diff --git a/content/browser/renderer_host/media/media_stream_manager_unittest.cc b/content/browser/renderer_host/media/media_stream_manager_unittest.cc
|
| index 6e7bec31ded2245a2b0962972f96d4693b0d46d2..ff2fadaaaf08913c166b02cbc14f2e0faf588688 100644
|
| --- a/content/browser/renderer_host/media/media_stream_manager_unittest.cc
|
| +++ b/content/browser/renderer_host/media/media_stream_manager_unittest.cc
|
| @@ -11,6 +11,7 @@
|
| #include "base/location.h"
|
| #include "base/macros.h"
|
| #include "base/run_loop.h"
|
| +#include "base/single_thread_task_runner.h"
|
| #include "base/strings/string_number_conversions.h"
|
| #include "base/strings/string_util.h"
|
| #include "base/thread_task_runner_handle.h"
|
| @@ -71,9 +72,7 @@
|
| class MockAudioManager : public AudioManagerPlatform {
|
| public:
|
| MockAudioManager()
|
| - : AudioManagerPlatform(base::ThreadTaskRunnerHandle::Get(),
|
| - base::ThreadTaskRunnerHandle::Get(),
|
| - &fake_audio_log_factory_),
|
| + : AudioManagerPlatform(&fake_audio_log_factory_),
|
| num_output_devices_(2) {}
|
| ~MockAudioManager() override {}
|
|
|
| @@ -177,21 +176,21 @@
|
| class MediaStreamManagerTest : public ::testing::Test {
|
| public:
|
| MediaStreamManagerTest()
|
| - : thread_bundle_(content::TestBrowserThreadBundle::IO_MAINLOOP) {
|
| + : thread_bundle_(content::TestBrowserThreadBundle::IO_MAINLOOP),
|
| + task_runner_(base::ThreadTaskRunnerHandle::Get()) {
|
| audio_manager_.reset(new MockAudioManager());
|
| media_stream_manager_.reset(new MediaStreamManager(audio_manager_.get()));
|
| - base::RunLoop().RunUntilIdle();
|
| - }
|
| -
|
| - ~MediaStreamManagerTest() override {}
|
| +}
|
| +
|
| + virtual ~MediaStreamManagerTest() {
|
| + }
|
|
|
| MOCK_METHOD1(Response, void(int index));
|
| void ResponseCallback(int index,
|
| const MediaStreamDevices& devices,
|
| std::unique_ptr<MediaStreamUIProxy> ui_proxy) {
|
| Response(index);
|
| - base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE,
|
| - run_loop_.QuitClosure());
|
| + task_runner_->PostTask(FROM_HERE, run_loop_.QuitClosure());
|
| }
|
|
|
| protected:
|
| @@ -209,12 +208,10 @@
|
| security_origin, callback);
|
| }
|
|
|
| - // media_stream_manager_ needs to outlive thread_bundle_ because it is a
|
| - // MessageLoop::DestructionObserver. audio_manager_ needs to outlive
|
| - // thread_bundle_ because it uses the underlying message loop.
|
| + std::unique_ptr<MockAudioManager> audio_manager_;
|
| std::unique_ptr<MediaStreamManager> media_stream_manager_;
|
| content::TestBrowserThreadBundle thread_bundle_;
|
| - std::unique_ptr<MockAudioManager, media::AudioManagerDeleter> audio_manager_;
|
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
|
| base::RunLoop run_loop_;
|
|
|
| private:
|
| @@ -234,6 +231,7 @@
|
| // No callback is expected.
|
| media_stream_manager_->CancelRequest(label);
|
| run_loop_.RunUntilIdle();
|
| + media_stream_manager_->WillDestroyCurrentMessageLoop();
|
| }
|
|
|
| TEST_F(MediaStreamManagerTest, MakeMultipleRequests) {
|
|
|