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

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

Issue 795703003: Don't auto allow access to media devices unless a the security origin of the requester is the same … (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed nit. Created 5 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
diff --git a/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc b/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
index c3d4e67b5134612a0305c8880708c92748b5a160..41449676a99a4d139ba9c27f68b0a24495bba8c0 100644
--- a/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
+++ b/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
@@ -17,8 +17,8 @@ using testing::Return;
using testing::SaveArg;
namespace content {
-namespace {
+namespace {
class MockRenderFrameHostDelegate : public RenderFrameHostDelegate {
public:
MOCK_METHOD2(RequestMediaAccessPermission,
@@ -76,28 +76,31 @@ class MediaStreamUIProxyTest : public testing::Test {
MATCHER_P(SameRequest, expected, "") {
return
- expected.render_process_id == arg.render_process_id &&
- expected.render_frame_id == arg.render_frame_id &&
- expected.tab_capture_device_id == arg.tab_capture_device_id &&
- expected.security_origin == arg.security_origin &&
- expected.request_type == arg.request_type &&
- expected.requested_audio_device_id == arg.requested_audio_device_id &&
- expected.requested_video_device_id == arg.requested_video_device_id &&
- expected.audio_type == arg.audio_type &&
- expected.video_type == arg.video_type;
+ expected->render_process_id == arg.render_process_id &&
+ expected->render_frame_id == arg.render_frame_id &&
+ expected->security_origin == arg.security_origin &&
+ expected->request_type == arg.request_type &&
+ expected->requested_audio_device_id == arg.requested_audio_device_id &&
+ expected->requested_video_device_id == arg.requested_video_device_id &&
+ expected->audio_type == arg.audio_type &&
+ expected->video_type == arg.video_type;
}
TEST_F(MediaStreamUIProxyTest, Deny) {
- MediaStreamRequest request(0, 0, 0, GURL("http://origin/"), false,
+ scoped_ptr<MediaStreamRequest> request (
+ new MediaStreamRequest(0, 0, 0, GURL("http://origin/"),
+ false,
MEDIA_GENERATE_STREAM, std::string(),
std::string(),
MEDIA_DEVICE_AUDIO_CAPTURE,
- MEDIA_DEVICE_VIDEO_CAPTURE);
+ MEDIA_DEVICE_VIDEO_CAPTURE));
+ MediaStreamRequest* request_ptr = request.get();
proxy_->RequestAccess(
- request, base::Bind(&MockResponseCallback::OnAccessRequestResponse,
- base::Unretained(&response_callback_)));
+ request.Pass(), base::Bind(&MockResponseCallback::OnAccessRequestResponse,
+ base::Unretained(&response_callback_)));
MediaResponseCallback callback;
- EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request), _))
+ EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request_ptr),
+ _))
.WillOnce(SaveArg<1>(&callback));
message_loop_.RunUntilIdle();
ASSERT_FALSE(callback.is_null());
@@ -114,16 +117,20 @@ TEST_F(MediaStreamUIProxyTest, Deny) {
}
TEST_F(MediaStreamUIProxyTest, AcceptAndStart) {
- MediaStreamRequest request(0, 0, 0, GURL("http://origin/"), false,
+ scoped_ptr<MediaStreamRequest> request (
+ new MediaStreamRequest(0, 0, 0,
+ GURL("http://origin/"), false,
MEDIA_GENERATE_STREAM, std::string(),
std::string(),
MEDIA_DEVICE_AUDIO_CAPTURE,
- MEDIA_DEVICE_VIDEO_CAPTURE);
+ MEDIA_DEVICE_VIDEO_CAPTURE));
+ MediaStreamRequest* request_ptr = request.get();
proxy_->RequestAccess(
- request, base::Bind(&MockResponseCallback::OnAccessRequestResponse,
- base::Unretained(&response_callback_)));
+ request.Pass(), base::Bind(&MockResponseCallback::OnAccessRequestResponse,
+ base::Unretained(&response_callback_)));
MediaResponseCallback callback;
- EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request), _))
+ EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request_ptr),
+ _))
.WillOnce(SaveArg<1>(&callback));
message_loop_.RunUntilIdle();
ASSERT_FALSE(callback.is_null());
@@ -148,16 +155,20 @@ TEST_F(MediaStreamUIProxyTest, AcceptAndStart) {
// Verify that the proxy can be deleted before the request is processed.
TEST_F(MediaStreamUIProxyTest, DeleteBeforeAccepted) {
- MediaStreamRequest request(0, 0, 0, GURL("http://origin/"), false,
+ scoped_ptr<MediaStreamRequest> request (
+ new MediaStreamRequest(0, 0, 0,
+ GURL("http://origin/"), false,
MEDIA_GENERATE_STREAM, std::string(),
std::string(),
MEDIA_DEVICE_AUDIO_CAPTURE,
- MEDIA_DEVICE_VIDEO_CAPTURE);
+ MEDIA_DEVICE_VIDEO_CAPTURE));
+ MediaStreamRequest* request_ptr = request.get();
proxy_->RequestAccess(
- request, base::Bind(&MockResponseCallback::OnAccessRequestResponse,
- base::Unretained(&response_callback_)));
+ request.Pass(), base::Bind(&MockResponseCallback::OnAccessRequestResponse,
+ base::Unretained(&response_callback_)));
MediaResponseCallback callback;
- EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request), _))
+ EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request_ptr)
+ , _))
.WillOnce(SaveArg<1>(&callback));
message_loop_.RunUntilIdle();
ASSERT_FALSE(callback.is_null());
@@ -170,16 +181,20 @@ TEST_F(MediaStreamUIProxyTest, DeleteBeforeAccepted) {
}
TEST_F(MediaStreamUIProxyTest, StopFromUI) {
- MediaStreamRequest request(0, 0, 0, GURL("http://origin/"), false,
+ scoped_ptr<MediaStreamRequest> request (
+ new MediaStreamRequest(0, 0, 0,
+ GURL("http://origin/"), false,
MEDIA_GENERATE_STREAM, std::string(),
std::string(),
MEDIA_DEVICE_AUDIO_CAPTURE,
- MEDIA_DEVICE_VIDEO_CAPTURE);
+ MEDIA_DEVICE_VIDEO_CAPTURE));
+ MediaStreamRequest* request_ptr = request.get();
proxy_->RequestAccess(
- request, base::Bind(&MockResponseCallback::OnAccessRequestResponse,
- base::Unretained(&response_callback_)));
+ request.Pass(), base::Bind(&MockResponseCallback::OnAccessRequestResponse,
+ base::Unretained(&response_callback_)));
MediaResponseCallback callback;
- EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request), _))
+ EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request_ptr)
+ , _))
.WillOnce(SaveArg<1>(&callback));
message_loop_.RunUntilIdle();
ASSERT_FALSE(callback.is_null());
@@ -214,22 +229,22 @@ TEST_F(MediaStreamUIProxyTest, StopFromUI) {
}
TEST_F(MediaStreamUIProxyTest, WindowIdCallbackCalled) {
- MediaStreamRequest request(0,
- 0,
- 0,
- GURL("http://origin/"),
- false,
- MEDIA_GENERATE_STREAM,
- std::string(),
+ scoped_ptr<MediaStreamRequest> request (
+ new MediaStreamRequest(0, 0, 0,
+ GURL("http://origin/"), false,
+ MEDIA_GENERATE_STREAM, std::string(),
std::string(),
MEDIA_NO_SERVICE,
- MEDIA_DESKTOP_VIDEO_CAPTURE);
+ MEDIA_DESKTOP_VIDEO_CAPTURE));
+ MediaStreamRequest* request_ptr = request.get();
+
proxy_->RequestAccess(
- request,
+ request.Pass(),
base::Bind(&MockResponseCallback::OnAccessRequestResponse,
base::Unretained(&response_callback_)));
MediaResponseCallback callback;
- EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request), _))
+ EXPECT_CALL(delegate_, RequestMediaAccessPermission(SameRequest(request_ptr),
+ _))
.WillOnce(SaveArg<1>(&callback));
message_loop_.RunUntilIdle();
« no previous file with comments | « content/browser/renderer_host/media/media_stream_ui_proxy.cc ('k') | content/public/common/media_stream_request.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698