| Index: media/audio/mock_audio_manager.h
|
| diff --git a/media/audio/mock_audio_manager.h b/media/audio/mock_audio_manager.h
|
| index 33f7e5eace700d5d99c849bb6b6f033493cdefc9..60a8b1ea99e67b147e8d5f5fd2c83c0bfc1d474d 100644
|
| --- a/media/audio/mock_audio_manager.h
|
| +++ b/media/audio/mock_audio_manager.h
|
| @@ -11,13 +11,19 @@
|
| namespace media {
|
|
|
| // This class is a simple mock around AudioManager, used exclusively for tests,
|
| -// which avoids to use the actual (system and platform dependent) AudioManager.
|
| -// Some bots does not have input devices, thus using the actual AudioManager
|
| -// would causing failures on classes which expect that.
|
| +// which has the following purposes:
|
| +// 1) Avoids to use the actual (system and platform dependent) AudioManager.
|
| +// Some bots does not have input devices, thus using the actual AudioManager
|
| +// would causing failures on classes which expect that.
|
| +// 2) Allows the mock audio events to be dispatched on an arbitrary thread,
|
| +// rather than forcing them on the audio thread, easing their handling in
|
| +// browser tests (Note: sharing a thread can cause deadlocks on production
|
| +// classes if WaitableEvents or any other form of lock is used for
|
| +// synchronization purposes).
|
| class MockAudioManager : public media::AudioManager {
|
| public:
|
| explicit MockAudioManager(
|
| - scoped_refptr<base::SingleThreadTaskRunner> task_runner);
|
| + const scoped_refptr<base::SingleThreadTaskRunner>& task_runner);
|
|
|
| bool HasAudioOutputDevices() override;
|
|
|
| @@ -44,6 +50,9 @@
|
| const media::AudioParameters& params,
|
| const std::string& device_id) override;
|
|
|
| + scoped_refptr<base::SingleThreadTaskRunner> GetTaskRunner() override;
|
| + scoped_refptr<base::SingleThreadTaskRunner> GetWorkerTaskRunner() override;
|
| +
|
| void AddOutputDeviceChangeListener(AudioDeviceListener* listener) override;
|
| void RemoveOutputDeviceChangeListener(AudioDeviceListener* listener) override;
|
|
|
| @@ -62,6 +71,8 @@
|
| ~MockAudioManager() override;
|
|
|
| private:
|
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(MockAudioManager);
|
| };
|
|
|
|
|