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

Unified Diff: content/browser/renderer_host/media/device_request_message_filter_unittest.cc

Issue 344653003: Revert 274608 "Implement getMediaDevices." (Closed) Base URL: svn://svn.chromium.org/chrome/branches/2057/src/
Patch Set: Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/media/device_request_message_filter_unittest.cc
===================================================================
--- content/browser/renderer_host/media/device_request_message_filter_unittest.cc (revision 278172)
+++ content/browser/renderer_host/media/device_request_message_filter_unittest.cc (working copy)
@@ -25,15 +25,15 @@
virtual ~MockMediaStreamManager() {}
- MOCK_METHOD8(EnumerateDevices,
+ MOCK_METHOD7(EnumerateDevices,
std::string(MediaStreamRequester* requester,
int render_process_id,
int render_view_id,
const ResourceContext::SaltCallback& rc,
int page_request_id,
MediaStreamType type,
- const GURL& security_origin,
- bool have_permission));
+ const GURL& security_origin));
+ MOCK_METHOD1(CancelRequest, void(const std::string& label));
std::string DoEnumerateDevices(MediaStreamRequester* requester,
int render_process_id,
@@ -41,8 +41,7 @@
const ResourceContext::SaltCallback& rc,
int page_request_id,
MediaStreamType type,
- const GURL& security_origin,
- bool have_permission) {
+ const GURL& security_origin) {
if (type == MEDIA_DEVICE_AUDIO_CAPTURE) {
return kAudioLabel;
} else {
@@ -96,12 +95,10 @@
AddVideoDevices(number_video_devices);
GURL origin("https://test.com");
EXPECT_CALL(*media_stream_manager_,
- EnumerateDevices(_, _, _, _, _, MEDIA_DEVICE_AUDIO_CAPTURE,
- _, _))
+ EnumerateDevices(_, _, _, _, _, MEDIA_DEVICE_AUDIO_CAPTURE, _))
.Times(1);
EXPECT_CALL(*media_stream_manager_,
- EnumerateDevices(_, _, _, _, _, MEDIA_DEVICE_VIDEO_CAPTURE,
- _, _))
+ EnumerateDevices(_, _, _, _, _, MEDIA_DEVICE_VIDEO_CAPTURE, _))
.Times(1);
// Send message to get devices. Should trigger 2 EnumerateDevice() requests.
const int kRequestId = 123;
@@ -113,6 +110,10 @@
EXPECT_EQ(0u, host_->requested_devices().size());
// After the video device callback is fired, |message| should be populated.
+ EXPECT_CALL(*media_stream_manager_, CancelRequest(kAudioLabel))
+ .Times(1);
+ EXPECT_CALL(*media_stream_manager_, CancelRequest(kVideoLabel))
+ .Times(1);
FireVideoDeviceCallback();
EXPECT_EQ(static_cast<size_t>(number_audio_devices + number_video_devices),
host_->requested_devices().size());
@@ -120,6 +121,15 @@
EXPECT_EQ(kRequestId, host_->received_id());
}
+ bool AreLabelsPresent(MediaStreamType type) {
+ const StreamDeviceInfoArray& devices = host_->requested_devices();
+ for (size_t i = 0; i < devices.size(); i++) {
+ if (devices[i].device.type == type && !devices[i].device.name.empty())
+ return true;
+ }
+ return false;
+ }
+
protected:
virtual ~DeviceRequestMessageFilterTest() {}
@@ -129,7 +139,7 @@
new TestBrowserThread(BrowserThread::IO, message_loop_.get()));
media_stream_manager_.reset(new MockMediaStreamManager());
- ON_CALL(*media_stream_manager_, EnumerateDevices(_, _, _, _, _, _, _, _))
+ ON_CALL(*media_stream_manager_, EnumerateDevices(_, _, _, _, _, _, _))
.WillByDefault(Invoke(media_stream_manager_.get(),
&MockMediaStreamManager::DoEnumerateDevices));
@@ -210,4 +220,36 @@
RunTest(0, 0);
}
+TEST_F(DeviceRequestMessageFilterTest, TestGetSources_DenyMicDenyCamera) {
+ resource_context_->set_mic_access(false);
+ resource_context_->set_camera_access(false);
+ RunTest(3, 3);
+ EXPECT_FALSE(AreLabelsPresent(MEDIA_DEVICE_AUDIO_CAPTURE));
+ EXPECT_FALSE(AreLabelsPresent(MEDIA_DEVICE_VIDEO_CAPTURE));
+}
+
+TEST_F(DeviceRequestMessageFilterTest, TestGetSources_AllowMicDenyCamera) {
+ resource_context_->set_mic_access(true);
+ resource_context_->set_camera_access(false);
+ RunTest(3, 3);
+ EXPECT_TRUE(AreLabelsPresent(MEDIA_DEVICE_AUDIO_CAPTURE));
+ EXPECT_FALSE(AreLabelsPresent(MEDIA_DEVICE_VIDEO_CAPTURE));
+}
+
+TEST_F(DeviceRequestMessageFilterTest, TestGetSources_DenyMicAllowCamera) {
+ resource_context_->set_mic_access(false);
+ resource_context_->set_camera_access(true);
+ RunTest(3, 3);
+ EXPECT_FALSE(AreLabelsPresent(MEDIA_DEVICE_AUDIO_CAPTURE));
+ EXPECT_TRUE(AreLabelsPresent(MEDIA_DEVICE_VIDEO_CAPTURE));
+}
+
+TEST_F(DeviceRequestMessageFilterTest, TestGetSources_AllowMicAllowCamera) {
+ resource_context_->set_mic_access(true);
+ resource_context_->set_camera_access(true);
+ RunTest(3, 3);
+ EXPECT_TRUE(AreLabelsPresent(MEDIA_DEVICE_AUDIO_CAPTURE));
+ EXPECT_TRUE(AreLabelsPresent(MEDIA_DEVICE_VIDEO_CAPTURE));
+}
+
}; // namespace content

Powered by Google App Engine
This is Rietveld 408576698