Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Side by Side Diff: content/renderer/media/webrtc/webrtc_media_stream_adapter_unittest.cc

Issue 2622073003: Fix getUserMedia so that failure is reported for invalid audio sources. (Closed)
Patch Set: Switch to std::vector and std::unique_ptr Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/media/webrtc/webrtc_media_stream_adapter.h" 5 #include "content/renderer/media/webrtc/webrtc_media_stream_adapter.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <memory> 9 #include <memory>
10 10
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 blink::WebMediaStreamSource::TypeAudio, 51 blink::WebMediaStreamSource::TypeAudio,
52 "audio", 52 "audio",
53 false /* remote */); 53 false /* remote */);
54 ProcessedLocalAudioSource* const source = new ProcessedLocalAudioSource( 54 ProcessedLocalAudioSource* const source = new ProcessedLocalAudioSource(
55 -1 /* consumer_render_frame_id is N/A for non-browser tests */, 55 -1 /* consumer_render_frame_id is N/A for non-browser tests */,
56 StreamDeviceInfo(MEDIA_DEVICE_AUDIO_CAPTURE, "Mock audio device", 56 StreamDeviceInfo(MEDIA_DEVICE_AUDIO_CAPTURE, "Mock audio device",
57 "mock_audio_device_id", 57 "mock_audio_device_id",
58 media::AudioParameters::kAudioCDSampleRate, 58 media::AudioParameters::kAudioCDSampleRate,
59 media::CHANNEL_LAYOUT_STEREO, 59 media::CHANNEL_LAYOUT_STEREO,
60 media::AudioParameters::kAudioCDSampleRate / 50), 60 media::AudioParameters::kAudioCDSampleRate / 50),
61 MockConstraintFactory().CreateWebMediaConstraints(),
62 base::Bind(&WebRtcMediaStreamAdapterTest::OnAudioSourceStarted),
61 dependency_factory_.get()); 63 dependency_factory_.get());
62 source->SetAllowInvalidRenderFrameIdForTesting(true); 64 source->SetAllowInvalidRenderFrameIdForTesting(true);
63 source->SetSourceConstraints(
64 MockConstraintFactory().CreateWebMediaConstraints());
65 audio_source.setExtraData(source); // Takes ownership. 65 audio_source.setExtraData(source); // Takes ownership.
66 audio_track_vector[0].initialize(audio_source); 66 audio_track_vector[0].initialize(audio_source);
67 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(), 67 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(),
68 Initialize(_, _, -1)); 68 Initialize(_, _, -1));
69 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(), 69 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(),
70 SetAutomaticGainControl(true)); 70 SetAutomaticGainControl(true));
71 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(), Start()); 71 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(), Start());
72 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(), Stop()); 72 EXPECT_CALL(*mock_audio_device_factory_.mock_capturer_source(), Stop());
73 CHECK(source->ConnectToTrack(audio_track_vector[0])); 73 CHECK(source->ConnectToTrack(audio_track_vector[0]));
74 } 74 }
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 adapter_->webrtc_media_stream()->GetVideoTracks().size()); 112 adapter_->webrtc_media_stream()->GetVideoTracks().size());
113 EXPECT_EQ(blink_stream.id().utf8(), 113 EXPECT_EQ(blink_stream.id().utf8(),
114 adapter_->webrtc_media_stream()->label()); 114 adapter_->webrtc_media_stream()->label());
115 } 115 }
116 116
117 webrtc::MediaStreamInterface* webrtc_stream() { 117 webrtc::MediaStreamInterface* webrtc_stream() {
118 return adapter_->webrtc_media_stream(); 118 return adapter_->webrtc_media_stream();
119 } 119 }
120 120
121 private: 121 private:
122 static void OnAudioSourceStarted(MediaStreamSource* source,
123 MediaStreamRequestResult result,
124 const blink::WebString& result_name) {}
125
122 base::MessageLoop message_loop_; 126 base::MessageLoop message_loop_;
123 std::unique_ptr<ChildProcess> child_process_; 127 std::unique_ptr<ChildProcess> child_process_;
124 std::unique_ptr<MockPeerConnectionDependencyFactory> dependency_factory_; 128 std::unique_ptr<MockPeerConnectionDependencyFactory> dependency_factory_;
125 std::unique_ptr<WebRtcMediaStreamAdapter> adapter_; 129 std::unique_ptr<WebRtcMediaStreamAdapter> adapter_;
126 MockAudioDeviceFactory mock_audio_device_factory_; 130 MockAudioDeviceFactory mock_audio_device_factory_;
127 }; 131 };
128 132
129 TEST_F(WebRtcMediaStreamAdapterTest, CreateWebRtcMediaStream) { 133 TEST_F(WebRtcMediaStreamAdapterTest, CreateWebRtcMediaStream) {
130 blink::WebMediaStream blink_stream = CreateBlinkMediaStream(true, true); 134 blink::WebMediaStream blink_stream = CreateBlinkMediaStream(true, true);
131 CreateWebRtcMediaStream(blink_stream, 1, 1); 135 CreateWebRtcMediaStream(blink_stream, 1, 1);
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 EXPECT_TRUE(webrtc_stream()->GetVideoTracks().empty()); 178 EXPECT_TRUE(webrtc_stream()->GetVideoTracks().empty());
175 179
176 native_stream->AddTrack(audio_tracks[0]); 180 native_stream->AddTrack(audio_tracks[0]);
177 EXPECT_EQ(1u, webrtc_stream()->GetAudioTracks().size()); 181 EXPECT_EQ(1u, webrtc_stream()->GetAudioTracks().size());
178 182
179 native_stream->AddTrack(video_tracks[0]); 183 native_stream->AddTrack(video_tracks[0]);
180 EXPECT_EQ(1u, webrtc_stream()->GetVideoTracks().size()); 184 EXPECT_EQ(1u, webrtc_stream()->GetVideoTracks().size());
181 } 185 }
182 186
183 } // namespace content 187 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/webrtc/processed_local_audio_source_unittest.cc ('k') | media/audio/audio_input_device.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698