summaryrefslogtreecommitdiff
path: root/chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-09-18 14:34:04 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-10-04 11:15:27 +0000
commite6430e577f105ad8813c92e75c54660c4985026e (patch)
tree88115e5d1fb471fea807111924dcccbeadbf9e4f /chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc
parent53d399fe6415a96ea6986ec0d402a9c07da72453 (diff)
downloadqtwebengine-chromium-e6430e577f105ad8813c92e75c54660c4985026e.tar.gz
BASELINE: Update Chromium to 61.0.3163.99
Change-Id: I8452f34574d88ca2b27af9bd56fc9ff3f16b1367 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc')
-rw-r--r--chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc81
1 files changed, 42 insertions, 39 deletions
diff --git a/chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc b/chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc
index 425e7dae128..c441897609a 100644
--- a/chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc
+++ b/chromium/content/browser/renderer_host/media/audio_input_renderer_host_unittest.cc
@@ -77,12 +77,13 @@ AudioInputHostMsg_CreateStream_Config DefaultConfig() {
class MockRenderer {
public:
- MOCK_METHOD5(NotifyStreamCreated,
+ MOCK_METHOD6(NotifyStreamCreated,
void(int /*stream_id*/,
base::SharedMemoryHandle /*handle*/,
base::SyncSocket::TransitDescriptor /*socket_desriptor*/,
uint32_t /*length*/,
- uint32_t /*total_segments*/));
+ uint32_t /*total_segments*/,
+ bool initially_muted));
MOCK_METHOD1(NotifyStreamError, void(int /*stream_id*/));
MOCK_METHOD0(WasShutDown, void());
};
@@ -138,7 +139,8 @@ class AudioInputRendererHostWithInterception : public AudioInputRendererHost {
base::SharedMemoryHandle handle,
base::SyncSocket::TransitDescriptor socket_descriptor,
uint32_t length,
- uint32_t total_segments) {
+ uint32_t total_segments,
+ bool initially_muted) {
// It's difficult to check that the sync socket and shared memory is
// valid in the gmock macros, so we check them here.
EXPECT_NE(base::SyncSocket::UnwrapHandle(socket_descriptor),
@@ -146,7 +148,7 @@ class AudioInputRendererHostWithInterception : public AudioInputRendererHost {
base::SharedMemory memory(handle, /*read_only*/ true);
EXPECT_TRUE(memory.Map(length));
renderer_->NotifyStreamCreated(stream_id, handle, socket_descriptor, length,
- total_segments);
+ total_segments, initially_muted);
EXPECT_TRUE(memory.Unmap());
memory.Close();
}
@@ -176,10 +178,9 @@ class MockAudioInputController : public AudioInputController {
type) {
GetTaskRunnerForTesting()->PostTask(
FROM_HERE,
- base::Bind(&AudioInputController::EventHandler::OnCreated,
- base::Unretained(event_handler), base::Unretained(this)));
- ON_CALL(*this, Close(_))
- .WillByDefault(Invoke(this, &MockAudioInputController::ExecuteClose));
+ base::BindOnce(&AudioInputController::EventHandler::OnCreated,
+ base::Unretained(event_handler), base::Unretained(this),
+ false));
ON_CALL(*this, EnableDebugRecording(_))
.WillByDefault(SaveArg<0>(&file_name));
}
@@ -189,12 +190,21 @@ class MockAudioInputController : public AudioInputController {
// File name that we pretend to do a debug recording to, if any.
base::FilePath debug_file_name() { return file_name; }
+ void Close(base::OnceClosure cl) override {
+ DidClose();
+ // Hop to audio manager thread before calling task, since this is the real
+ // behavior.
+ GetTaskRunnerForTesting()->PostTaskAndReply(
+ FROM_HERE, base::BindOnce([]() {}), std::move(cl));
+ }
+
MOCK_METHOD0(Record, void());
- MOCK_METHOD1(Close, void(const base::Closure&));
MOCK_METHOD1(SetVolume, void(double));
MOCK_METHOD1(EnableDebugRecording, void(const base::FilePath&));
MOCK_METHOD0(DisableDebugRecording, void());
+ MOCK_METHOD0(DidClose, void());
+
// AudioInputCallback impl, irrelevant to us.
MOCK_METHOD4(
OnData,
@@ -205,13 +215,6 @@ class MockAudioInputController : public AudioInputController {
~MockAudioInputController() override = default;
private:
- void ExecuteClose(const base::Closure& task) {
- // Hop to audio manager thread before calling task, since this is the real
- // behavior.
- GetTaskRunnerForTesting()->PostTaskAndReply(FROM_HERE, base::Bind([]() {}),
- task);
- }
-
base::FilePath file_name;
};
@@ -333,14 +336,14 @@ TEST_F(AudioInputRendererHostTest, CreateWithDefaultDevice) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
}
// If authorization hasn't been granted, only reply with and error and do
@@ -359,14 +362,14 @@ TEST_F(AudioInputRendererHostTest, CreateWithNonDefaultDevice) {
int session_id = Open("Nondefault device", GetRawNondefaultId());
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
}
// Checks that stream is started when calling record.
@@ -375,7 +378,7 @@ TEST_F(AudioInputRendererHostTest, CreateRecordClose) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
@@ -383,7 +386,7 @@ TEST_F(AudioInputRendererHostTest, CreateRecordClose) {
base::RunLoop().RunUntilIdle();
EXPECT_CALL(*controller_factory_.controller(0), Record());
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
airh_->OnMessageReceived(AudioInputHostMsg_RecordStream(kStreamId));
base::RunLoop().RunUntilIdle();
@@ -398,7 +401,7 @@ TEST_F(AudioInputRendererHostTest, CreateSetVolumeRecordClose) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
@@ -407,7 +410,7 @@ TEST_F(AudioInputRendererHostTest, CreateSetVolumeRecordClose) {
EXPECT_CALL(*controller_factory_.controller(0), SetVolume(0.5));
EXPECT_CALL(*controller_factory_.controller(0), Record());
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
airh_->OnMessageReceived(AudioInputHostMsg_SetVolume(kStreamId, 0.5));
airh_->OnMessageReceived(AudioInputHostMsg_RecordStream(kStreamId));
@@ -423,14 +426,14 @@ TEST_F(AudioInputRendererHostTest, SetVolumeTooLarge_BadMessage) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
EXPECT_CALL(renderer_, WasShutDown());
airh_->OnMessageReceived(AudioInputHostMsg_SetVolume(kStreamId, 5));
@@ -444,14 +447,14 @@ TEST_F(AudioInputRendererHostTest, SetVolumeNegative_BadMessage) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
EXPECT_CALL(renderer_, WasShutDown());
airh_->OnMessageReceived(AudioInputHostMsg_SetVolume(kStreamId, -0.5));
@@ -465,7 +468,7 @@ TEST_F(AudioInputRendererHostTest, CreateTwice_Error) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(renderer_, NotifyStreamError(kStreamId));
EXPECT_CALL(controller_factory_, ControllerCreated());
@@ -475,7 +478,7 @@ TEST_F(AudioInputRendererHostTest, CreateTwice_Error) {
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
}
// Checks that when two streams are created, messages are routed to the correct
@@ -486,9 +489,9 @@ TEST_F(AudioInputRendererHostTest, TwoStreams) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
- EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId + 1, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
+ EXPECT_CALL(renderer_, NotifyStreamCreated(kStreamId + 1, _, _, _,
+ kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated()).Times(2);
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
@@ -512,8 +515,8 @@ TEST_F(AudioInputRendererHostTest, TwoStreams) {
airh_->DisableDebugRecording();
#endif // ENABLE_WEBRTC
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
- EXPECT_CALL(*controller_factory_.controller(1), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
+ EXPECT_CALL(*controller_factory_.controller(1), DidClose());
}
// Checks that the stream is properly cleaned up and a notification is sent to
@@ -523,14 +526,14 @@ TEST_F(AudioInputRendererHostTest, Error_ClosesController) {
Open("Default device", media::AudioDeviceDescription::kDefaultDeviceId);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
EXPECT_CALL(renderer_, NotifyStreamError(kStreamId));
controller_factory_.controller(0)->handler()->OnError(
@@ -555,14 +558,14 @@ TEST_F(AudioInputRendererHostTest, TabCaptureStream) {
int session_id = Open("Tab capture", controls.audio.device_id);
EXPECT_CALL(renderer_,
- NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount));
+ NotifyStreamCreated(kStreamId, _, _, _, kSharedMemoryCount, _));
EXPECT_CALL(controller_factory_, ControllerCreated());
airh_->OnMessageReceived(AudioInputHostMsg_CreateStream(
kStreamId, kRenderFrameId, session_id, DefaultConfig()));
base::RunLoop().RunUntilIdle();
- EXPECT_CALL(*controller_factory_.controller(0), Close(_));
+ EXPECT_CALL(*controller_factory_.controller(0), DidClose());
}
} // namespace content