Commit 7948a423 authored by tfarina@chromium.org's avatar tfarina@chromium.org

test_runner: Migrate WebUserMediaClientMock to our Chromium C++ style.

Changes:
1) Run clang-format through source and header files.
3) Fix data member variables to use unix_hacker_ style.
4) Rename file name to mock_web_user_media_client.
5) Rename class name to MockWebUserMediaClient.

BUG=331299
TEST=content_unittests, content_shell. No functional changes
TBR=dpranke@chromium.org

Review URL: https://codereview.chromium.org/308073011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274171 0039d316-1c4b-4281-b951-d872f2087c98
parent 82dc96cb
......@@ -208,8 +208,6 @@
'shell/renderer/test_runner/WebTestThemeEngineMac.mm',
'shell/renderer/test_runner/WebTestThemeEngineMock.cpp',
'shell/renderer/test_runner/WebTestThemeEngineMock.h',
'shell/renderer/test_runner/WebUserMediaClientMock.cpp',
'shell/renderer/test_runner/WebUserMediaClientMock.h',
'shell/renderer/test_runner/accessibility_controller.cc',
'shell/renderer/test_runner/accessibility_controller.h',
'shell/renderer/test_runner/event_sender.cc',
......@@ -220,6 +218,8 @@
'shell/renderer/test_runner/mock_constraints.h',
'shell/renderer/test_runner/mock_grammar_check.cc',
'shell/renderer/test_runner/mock_grammar_check.h',
'shell/renderer/test_runner/mock_web_user_media_client.cc',
'shell/renderer/test_runner/mock_web_user_media_client.h',
'shell/renderer/test_runner/mock_webrtc_data_channel_handler.cc',
'shell/renderer/test_runner/mock_webrtc_data_channel_handler.h',
'shell/renderer/test_runner/notification_presenter.cc',
......
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "content/shell/renderer/test_runner/WebUserMediaClientMock.h"
#include "base/logging.h"
#include "content/shell/renderer/test_runner/WebTestDelegate.h"
#include "content/shell/renderer/test_runner/mock_constraints.h"
#include "third_party/WebKit/public/platform/WebMediaConstraints.h"
#include "third_party/WebKit/public/platform/WebMediaDeviceInfo.h"
#include "third_party/WebKit/public/platform/WebMediaStream.h"
#include "third_party/WebKit/public/platform/WebMediaStreamSource.h"
#include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
#include "third_party/WebKit/public/platform/WebVector.h"
#include "third_party/WebKit/public/web/WebDocument.h"
#include "third_party/WebKit/public/web/WebMediaDevicesRequest.h"
#include "third_party/WebKit/public/web/WebMediaStreamRegistry.h"
#include "third_party/WebKit/public/web/WebUserMediaRequest.h"
using namespace blink;
namespace content {
class UserMediaRequestTask : public WebMethodTask<WebUserMediaClientMock> {
public:
UserMediaRequestTask(WebUserMediaClientMock* object, const WebUserMediaRequest& request, const WebMediaStream result)
: WebMethodTask<WebUserMediaClientMock>(object)
, m_request(request)
, m_result(result)
{
DCHECK(!m_result.isNull());
}
virtual void runIfValid() OVERRIDE
{
m_request.requestSucceeded(m_result);
}
private:
WebUserMediaRequest m_request;
WebMediaStream m_result;
};
class UserMediaRequestConstraintFailedTask : public WebMethodTask<WebUserMediaClientMock> {
public:
UserMediaRequestConstraintFailedTask(WebUserMediaClientMock* object, const WebUserMediaRequest& request, const WebString& constraint)
: WebMethodTask<WebUserMediaClientMock>(object)
, m_request(request)
, m_constraint(constraint)
{
}
virtual void runIfValid() OVERRIDE
{
m_request.requestFailedConstraint(m_constraint);
}
private:
WebUserMediaRequest m_request;
WebString m_constraint;
};
class UserMediaRequestPermissionDeniedTask : public WebMethodTask<WebUserMediaClientMock> {
public:
UserMediaRequestPermissionDeniedTask(WebUserMediaClientMock* object, const WebUserMediaRequest& request)
: WebMethodTask<WebUserMediaClientMock>(object)
, m_request(request)
{
}
virtual void runIfValid() OVERRIDE
{
m_request.requestFailed();
}
private:
WebUserMediaRequest m_request;
};
class MediaDevicesRequestTask : public WebMethodTask<WebUserMediaClientMock> {
public:
MediaDevicesRequestTask(WebUserMediaClientMock* object, const WebMediaDevicesRequest& request, const WebVector<WebMediaDeviceInfo>& result)
: WebMethodTask<WebUserMediaClientMock>(object)
, m_request(request)
, m_result(result)
{
}
virtual void runIfValid() OVERRIDE
{
m_request.requestSucceeded(m_result);
}
private:
WebMediaDevicesRequest m_request;
WebVector<WebMediaDeviceInfo> m_result;
};
////////////////////////////////
class MockExtraData : public WebMediaStream::ExtraData {
public:
int foo;
};
WebUserMediaClientMock::WebUserMediaClientMock(WebTestDelegate* delegate)
: m_delegate(delegate)
{
}
void WebUserMediaClientMock::requestUserMedia(const WebUserMediaRequest& streamRequest)
{
DCHECK(!streamRequest.isNull());
WebUserMediaRequest request = streamRequest;
if (request.ownerDocument().isNull() || !request.ownerDocument().frame()) {
m_delegate->postTask(new UserMediaRequestPermissionDeniedTask(this, request));
return;
}
WebMediaConstraints constraints = request.audioConstraints();
WebString failedConstraint;
if (!constraints.isNull() && !MockConstraints::VerifyConstraints(constraints, &failedConstraint)) {
m_delegate->postTask(new UserMediaRequestConstraintFailedTask(this, request, failedConstraint));
return;
}
constraints = request.videoConstraints();
if (!constraints.isNull() && !MockConstraints::VerifyConstraints(constraints, &failedConstraint)) {
m_delegate->postTask(new UserMediaRequestConstraintFailedTask(this, request, failedConstraint));
return;
}
const size_t zero = 0;
const size_t one = 1;
WebVector<WebMediaStreamTrack> audioTracks(request.audio() ? one : zero);
WebVector<WebMediaStreamTrack> videoTracks(request.video() ? one : zero);
if (request.audio()) {
WebMediaStreamSource source;
source.initialize("MockAudioDevice#1", WebMediaStreamSource::TypeAudio, "Mock audio device");
audioTracks[0].initialize(source);
}
if (request.video()) {
WebMediaStreamSource source;
source.initialize("MockVideoDevice#1", WebMediaStreamSource::TypeVideo, "Mock video device");
videoTracks[0].initialize(source);
}
WebMediaStream stream;
stream.initialize(audioTracks, videoTracks);
stream.setExtraData(new MockExtraData());
m_delegate->postTask(new UserMediaRequestTask(this, request, stream));
}
void WebUserMediaClientMock::cancelUserMediaRequest(const WebUserMediaRequest&)
{
}
void WebUserMediaClientMock::requestMediaDevices(const WebMediaDevicesRequest& request)
{
const size_t three = 3;
WebVector<WebMediaDeviceInfo> devices(three);
devices[0].initialize("device1", WebMediaDeviceInfo::MediaDeviceKindAudioInput, "Built-in microphone", "group1");
devices[1].initialize("device2", WebMediaDeviceInfo::MediaDeviceKindAudioOutput, "Built-in speakers", "group1");
devices[2].initialize("device3", WebMediaDeviceInfo::MediaDeviceKindVideoInput, "Build-in webcam", "group2");
m_delegate->postTask(new MediaDevicesRequestTask(this, request, devices));
}
void WebUserMediaClientMock::cancelMediaDevicesRequest(const WebMediaDevicesRequest&)
{
}
} // namespace content
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CONTENT_SHELL_RENDERER_TEST_RUNNER_WEBUSERMEDIACLIENTMOCK_H_
#define CONTENT_SHELL_RENDERER_TEST_RUNNER_WEBUSERMEDIACLIENTMOCK_H_
#include "base/basictypes.h"
#include "content/shell/renderer/test_runner/TestCommon.h"
#include "content/shell/renderer/test_runner/WebTask.h"
#include "third_party/WebKit/public/platform/WebString.h"
#include "third_party/WebKit/public/platform/WebURL.h"
#include "third_party/WebKit/public/web/WebUserMediaClient.h"
namespace content {
class WebTestDelegate;
class WebUserMediaClientMock : public blink::WebUserMediaClient {
public:
explicit WebUserMediaClientMock(WebTestDelegate*);
virtual ~WebUserMediaClientMock() { }
virtual void requestUserMedia(const blink::WebUserMediaRequest&) OVERRIDE;
virtual void cancelUserMediaRequest(const blink::WebUserMediaRequest&) OVERRIDE;
virtual void requestMediaDevices(const blink::WebMediaDevicesRequest&) OVERRIDE;
virtual void cancelMediaDevicesRequest(const blink::WebMediaDevicesRequest&) OVERRIDE;
// Task related methods
WebTaskList* mutable_task_list() { return &m_taskList; }
private:
WebTaskList m_taskList;
WebTestDelegate* m_delegate;
DISALLOW_COPY_AND_ASSIGN(WebUserMediaClientMock);
};
} // namespace content
#endif // CONTENT_SHELL_RENDERER_TEST_RUNNER_WEBUSERMEDIACLIENTMOCK_H_
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "content/shell/renderer/test_runner/mock_web_user_media_client.h"
#include "base/logging.h"
#include "content/shell/renderer/test_runner/WebTestDelegate.h"
#include "content/shell/renderer/test_runner/mock_constraints.h"
#include "third_party/WebKit/public/platform/WebMediaConstraints.h"
#include "third_party/WebKit/public/platform/WebMediaDeviceInfo.h"
#include "third_party/WebKit/public/platform/WebMediaStream.h"
#include "third_party/WebKit/public/platform/WebMediaStreamSource.h"
#include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
#include "third_party/WebKit/public/platform/WebVector.h"
#include "third_party/WebKit/public/web/WebDocument.h"
#include "third_party/WebKit/public/web/WebMediaDevicesRequest.h"
#include "third_party/WebKit/public/web/WebMediaStreamRegistry.h"
#include "third_party/WebKit/public/web/WebUserMediaRequest.h"
using blink::WebMediaConstraints;
using blink::WebMediaDeviceInfo;
using blink::WebMediaDevicesRequest;
using blink::WebMediaStream;
using blink::WebMediaStreamSource;
using blink::WebMediaStreamTrack;
using blink::WebString;
using blink::WebUserMediaRequest;
using blink::WebVector;
namespace content {
class UserMediaRequestTask : public WebMethodTask<MockWebUserMediaClient> {
public:
UserMediaRequestTask(MockWebUserMediaClient* object,
const WebUserMediaRequest& request,
const WebMediaStream result)
: WebMethodTask<MockWebUserMediaClient>(object),
request_(request),
result_(result) {
DCHECK(!result_.isNull());
}
virtual void runIfValid() OVERRIDE {
request_.requestSucceeded(result_);
}
private:
WebUserMediaRequest request_;
WebMediaStream result_;
};
class UserMediaRequestConstraintFailedTask
: public WebMethodTask<MockWebUserMediaClient> {
public:
UserMediaRequestConstraintFailedTask(MockWebUserMediaClient* object,
const WebUserMediaRequest& request,
const WebString& constraint)
: WebMethodTask<MockWebUserMediaClient>(object),
request_(request),
constraint_(constraint) {}
virtual void runIfValid() OVERRIDE {
request_.requestFailedConstraint(constraint_);
}
private:
WebUserMediaRequest request_;
WebString constraint_;
};
class UserMediaRequestPermissionDeniedTask
: public WebMethodTask<MockWebUserMediaClient> {
public:
UserMediaRequestPermissionDeniedTask(MockWebUserMediaClient* object,
const WebUserMediaRequest& request)
: WebMethodTask<MockWebUserMediaClient>(object),
request_(request) {}
virtual void runIfValid() OVERRIDE {
request_.requestFailed();
}
private:
WebUserMediaRequest request_;
};
class MediaDevicesRequestTask : public WebMethodTask<MockWebUserMediaClient> {
public:
MediaDevicesRequestTask(MockWebUserMediaClient* object,
const WebMediaDevicesRequest& request,
const WebVector<WebMediaDeviceInfo>& result)
: WebMethodTask<MockWebUserMediaClient>(object),
request_(request),
result_(result) {}
virtual void runIfValid() OVERRIDE {
request_.requestSucceeded(result_);
}
private:
WebMediaDevicesRequest request_;
WebVector<WebMediaDeviceInfo> result_;
};
class MockExtraData : public WebMediaStream::ExtraData {
public:
int foo;
};
MockWebUserMediaClient::MockWebUserMediaClient(WebTestDelegate* delegate)
: delegate_(delegate) {}
void MockWebUserMediaClient::requestUserMedia(
const WebUserMediaRequest& stream_request) {
DCHECK(!stream_request.isNull());
WebUserMediaRequest request = stream_request;
if (request.ownerDocument().isNull() || !request.ownerDocument().frame()) {
delegate_->postTask(
new UserMediaRequestPermissionDeniedTask(this, request));
return;
}
WebMediaConstraints constraints = request.audioConstraints();
WebString failed_constraint;
if (!constraints.isNull() &&
!MockConstraints::VerifyConstraints(constraints, &failed_constraint)) {
delegate_->postTask(new UserMediaRequestConstraintFailedTask(
this, request, failed_constraint));
return;
}
constraints = request.videoConstraints();
if (!constraints.isNull() &&
!MockConstraints::VerifyConstraints(constraints, &failed_constraint)) {
delegate_->postTask(new UserMediaRequestConstraintFailedTask(
this, request, failed_constraint));
return;
}
const size_t zero = 0;
const size_t one = 1;
WebVector<WebMediaStreamTrack> audio_tracks(request.audio() ? one : zero);
WebVector<WebMediaStreamTrack> video_tracks(request.video() ? one : zero);
if (request.audio()) {
WebMediaStreamSource source;
source.initialize("MockAudioDevice#1",
WebMediaStreamSource::TypeAudio,
"Mock audio device");
audio_tracks[0].initialize(source);
}
if (request.video()) {
WebMediaStreamSource source;
source.initialize("MockVideoDevice#1",
WebMediaStreamSource::TypeVideo,
"Mock video device");
video_tracks[0].initialize(source);
}
WebMediaStream stream;
stream.initialize(audio_tracks, video_tracks);
stream.setExtraData(new MockExtraData());
delegate_->postTask(new UserMediaRequestTask(this, request, stream));
}
void MockWebUserMediaClient::cancelUserMediaRequest(
const WebUserMediaRequest&) {
}
void MockWebUserMediaClient::requestMediaDevices(
const WebMediaDevicesRequest& request) {
const size_t three = 3;
WebVector<WebMediaDeviceInfo> devices(three);
devices[0].initialize("device1",
WebMediaDeviceInfo::MediaDeviceKindAudioInput,
"Built-in microphone",
"group1");
devices[1].initialize("device2",
WebMediaDeviceInfo::MediaDeviceKindAudioOutput,
"Built-in speakers",
"group1");
devices[2].initialize("device3",
WebMediaDeviceInfo::MediaDeviceKindVideoInput,
"Build-in webcam",
"group2");
delegate_->postTask(new MediaDevicesRequestTask(this, request, devices));
}
void MockWebUserMediaClient::cancelMediaDevicesRequest(
const WebMediaDevicesRequest&) {
}
} // namespace content
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CONTENT_SHELL_RENDERER_TEST_RUNNER_MOCK_WEB_USER_MEDIA_CLIENT_H_
#define CONTENT_SHELL_RENDERER_TEST_RUNNER_MOCK_WEB_USER_MEDIA_CLIENT_H_
#include "base/macros.h"
#include "content/shell/renderer/test_runner/WebTask.h"
#include "third_party/WebKit/public/web/WebUserMediaClient.h"
namespace content {
class WebTestDelegate;
class MockWebUserMediaClient : public blink::WebUserMediaClient {
public:
explicit MockWebUserMediaClient(WebTestDelegate* delegate);
virtual ~MockWebUserMediaClient() {}
virtual void requestUserMedia(const blink::WebUserMediaRequest&) OVERRIDE;
virtual void cancelUserMediaRequest(
const blink::WebUserMediaRequest&) OVERRIDE;
virtual void requestMediaDevices(
const blink::WebMediaDevicesRequest&) OVERRIDE;
virtual void cancelMediaDevicesRequest(
const blink::WebMediaDevicesRequest&) OVERRIDE;
// Task related methods
WebTaskList* mutable_task_list() { return &task_list_; }
private:
WebTaskList task_list_;
WebTestDelegate* delegate_;
DISALLOW_COPY_AND_ASSIGN(MockWebUserMediaClient);
};
} // namespace content
#endif // CONTENT_SHELL_RENDERER_TEST_RUNNER_MOCK_WEB_USER_MEDIA_CLIENT_H_
......@@ -17,9 +17,9 @@
#include "content/shell/renderer/test_runner/TestPlugin.h"
#include "content/shell/renderer/test_runner/WebTestDelegate.h"
#include "content/shell/renderer/test_runner/WebTestInterfaces.h"
#include "content/shell/renderer/test_runner/WebUserMediaClientMock.h"
#include "content/shell/renderer/test_runner/accessibility_controller.h"
#include "content/shell/renderer/test_runner/event_sender.h"
#include "content/shell/renderer/test_runner/mock_web_user_media_client.h"
#include "content/shell/renderer/test_runner/test_runner.h"
#include "content/shell/renderer/test_runner/web_test_runner.h"
// FIXME: Including platform_canvas.h here is a layering violation.
......@@ -742,7 +742,7 @@ void WebTestProxyBase::ShowContextMenu(
blink::WebUserMediaClient* WebTestProxyBase::GetUserMediaClient() {
if (!user_media_client_.get())
user_media_client_.reset(new WebUserMediaClientMock(delegate_));
user_media_client_.reset(new MockWebUserMediaClient(delegate_));
return user_media_client_.get();
}
......
......@@ -75,12 +75,12 @@ typedef unsigned WebColor;
namespace content {
class MockWebSpeechRecognizer;
class MockWebUserMediaClient;
class RenderFrame;
class SpellCheckClient;
class TestInterfaces;
class WebTestDelegate;
class WebTestInterfaces;
class WebUserMediaClientMock;
// WebTestProxyBase is the "brain" of WebTestProxy in the sense that
// WebTestProxy does the bridge between RenderViewImpl and WebTestProxyBase and
......@@ -251,7 +251,7 @@ class WebTestProxyBase : public blink::WebCompositeAndReadbackAsyncCallback {
WebTaskList task_list_;
scoped_ptr<SpellCheckClient> spellcheck_;
scoped_ptr<WebUserMediaClientMock> user_media_client_;
scoped_ptr<MockWebUserMediaClient> user_media_client_;
bool animate_scheduled_;
std::map<unsigned, std::string> resource_identifier_map_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment