| Index: media/audio/audio_output_device_unittest.cc
|
| diff --git a/media/audio/audio_output_device_unittest.cc b/media/audio/audio_output_device_unittest.cc
|
| index 3b3ee512f5eedcc2df5137a9260276427e6aec74..7a65cbdd8aea8fdba5975dcb7f1533e5a03bc302 100644
|
| --- a/media/audio/audio_output_device_unittest.cc
|
| +++ b/media/audio/audio_output_device_unittest.cc
|
| @@ -49,17 +49,20 @@ class MockAudioOutputIPC : public AudioOutputIPC {
|
| MockAudioOutputIPC() {}
|
| virtual ~MockAudioOutputIPC() {}
|
|
|
| - MOCK_METHOD3(CreateStream, void(AudioOutputIPCDelegate* delegate,
|
| - const AudioParameters& params,
|
| - int session_id));
|
| + MOCK_METHOD4(RequestDeviceAuthorization,
|
| + void(AudioOutputIPCDelegate* delegate,
|
| + int session_id,
|
| + const std::string& device_id,
|
| + const GURL& security_origin));
|
| + MOCK_METHOD2(CreateStream,
|
| + void(AudioOutputIPCDelegate* delegate,
|
| + const AudioParameters& params));
|
| MOCK_METHOD0(PlayStream, void());
|
| MOCK_METHOD0(PauseStream, void());
|
| MOCK_METHOD0(CloseStream, void());
|
| MOCK_METHOD1(SetVolume, void(double volume));
|
| - MOCK_METHOD3(SwitchOutputDevice,
|
| - void(const std::string& device_id,
|
| - const GURL& security_origin,
|
| - int request_id));
|
| + MOCK_METHOD2(SwitchOutputDevice,
|
| + void(const std::string& device_id, const GURL& security_origin));
|
| };
|
|
|
| class MockSwitchOutputDeviceCallback {
|
| @@ -129,6 +132,13 @@ AudioOutputDeviceTest::AudioOutputDeviceTest() {
|
| audio_device_ = new AudioOutputDevice(
|
| scoped_ptr<AudioOutputIPC>(audio_output_ipc_),
|
| io_loop_.task_runner());
|
| + audio_device_->RequestDeviceAuthorization();
|
| + EXPECT_CALL(*audio_output_ipc_,
|
| + RequestDeviceAuthorization(audio_device_.get(), 0, std::string(),
|
| + GURL::EmptyGURL()));
|
| +
|
| + // Simulate response from browser
|
| + audio_device_->OnDeviceAuthorized(true, default_audio_parameters_);
|
|
|
| audio_device_->Initialize(default_audio_parameters_,
|
| &callback_);
|
| @@ -143,7 +153,7 @@ AudioOutputDeviceTest::~AudioOutputDeviceTest() {
|
| void AudioOutputDeviceTest::StartAudioDevice() {
|
| audio_device_->Start();
|
|
|
| - EXPECT_CALL(*audio_output_ipc_, CreateStream(audio_device_.get(), _, 0));
|
| + EXPECT_CALL(*audio_output_ipc_, CreateStream(audio_device_.get(), _));
|
|
|
| io_loop_.RunUntilIdle();
|
| }
|
| @@ -215,11 +225,10 @@ void AudioOutputDeviceTest::StopAudioDevice() {
|
| void AudioOutputDeviceTest::SwitchOutputDevice() {
|
| const GURL security_origin("http://localhost");
|
| const std::string device_id;
|
| - const int request_id = 1;
|
|
|
| // Switch the output device and check that the IPC message is sent
|
| EXPECT_CALL(*audio_output_ipc_,
|
| - SwitchOutputDevice(device_id, security_origin, request_id));
|
| + SwitchOutputDevice(device_id, security_origin));
|
| audio_device_->SwitchOutputDevice(
|
| device_id, security_origin,
|
| base::Bind(&MockSwitchOutputDeviceCallback::Callback,
|
| @@ -229,14 +238,15 @@ void AudioOutputDeviceTest::SwitchOutputDevice() {
|
| // Simulate the reception of a successful response from the browser
|
| EXPECT_CALL(switch_output_device_callback_,
|
| Callback(SWITCH_OUTPUT_DEVICE_RESULT_SUCCESS));
|
| - audio_device_->OnOutputDeviceSwitched(request_id,
|
| - SWITCH_OUTPUT_DEVICE_RESULT_SUCCESS);
|
| + audio_device_->OnOutputDeviceSwitched(SWITCH_OUTPUT_DEVICE_RESULT_SUCCESS,
|
| + default_audio_parameters_);
|
| io_loop_.RunUntilIdle();
|
| }
|
|
|
| TEST_P(AudioOutputDeviceTest, Initialize) {
|
| // Tests that the object can be constructed, initialized and destructed
|
| - // without having ever been started/stopped.
|
| + // without having ever been started.
|
| + StopAudioDevice();
|
| }
|
|
|
| // Calls Start() followed by an immediate Stop() and check for the basic message
|
| @@ -250,6 +260,11 @@ TEST_P(AudioOutputDeviceTest, StartStop) {
|
| TEST_P(AudioOutputDeviceTest, StartStopStartStop) {
|
| StartAudioDevice();
|
| StopAudioDevice();
|
| +
|
| + // Expect extra authorization request after stopping and restarting
|
| + EXPECT_CALL(*audio_output_ipc_,
|
| + RequestDeviceAuthorization(audio_device_.get(), 0, "",
|
| + GURL::EmptyGURL()));
|
| StartAudioDevice();
|
| StopAudioDevice();
|
| }
|
|
|