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 3// found in the LICENSE file. 4 5#ifndef CONTENT_SHELL_RENDERER_TEST_RUNNER_MOCK_WEB_MEDIA_STREAM_CENTER_H_ 6#define CONTENT_SHELL_RENDERER_TEST_RUNNER_MOCK_WEB_MEDIA_STREAM_CENTER_H_ 7 8#include "third_party/WebKit/public/platform/WebMediaStreamCenter.h" 9 10#include "base/basictypes.h" 11#include "content/shell/renderer/test_runner/web_task.h" 12 13namespace blink { 14class WebAudioSourceProvider; 15class WebMediaStreamCenterClient; 16}; 17 18namespace content { 19 20class TestInterfaces; 21 22class MockWebMediaStreamCenter : public blink::WebMediaStreamCenter { 23 public: 24 MockWebMediaStreamCenter(blink::WebMediaStreamCenterClient* client, 25 TestInterfaces* interfaces); 26 virtual ~MockWebMediaStreamCenter(); 27 28 virtual bool getMediaStreamTrackSources( 29 const blink::WebMediaStreamTrackSourcesRequest& request); 30 virtual void didEnableMediaStreamTrack( 31 const blink::WebMediaStreamTrack& track); 32 virtual void didDisableMediaStreamTrack( 33 const blink::WebMediaStreamTrack& track); 34 virtual bool didAddMediaStreamTrack(const blink::WebMediaStream& stream, 35 const blink::WebMediaStreamTrack& track); 36 virtual bool didRemoveMediaStreamTrack( 37 const blink::WebMediaStream& stream, 38 const blink::WebMediaStreamTrack& track); 39 virtual void didStopLocalMediaStream(const blink::WebMediaStream& stream); 40 virtual bool didStopMediaStreamTrack(const blink::WebMediaStreamTrack& track); 41 virtual void didCreateMediaStream(blink::WebMediaStream& stream); 42 virtual blink::WebAudioSourceProvider* 43 createWebAudioSourceFromMediaStreamTrack( 44 const blink::WebMediaStreamTrack& track); 45 46 // Task related methods 47 WebTaskList* mutable_task_list() { return &task_list_; } 48 49 private: 50 WebTaskList task_list_; 51 TestInterfaces* interfaces_; 52 53 DISALLOW_COPY_AND_ASSIGN(MockWebMediaStreamCenter); 54}; 55 56} // namespace content 57 58#endif // CONTENT_SHELL_RENDERER_TEST_RUNNER_MOCK_WEB_MEDIA_STREAM_CENTER_H_ 59