1 /* 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 #ifndef WEBRTC_MODULES_DESKTOP_CAPTURE_SCREEN_CAPTURER_MOCK_OBJECTS_H_ 12 #define WEBRTC_MODULES_DESKTOP_CAPTURE_SCREEN_CAPTURER_MOCK_OBJECTS_H_ 13 14 #include "testing/gmock/include/gmock/gmock.h" 15 #include "webrtc/modules/desktop_capture/screen_capturer.h" 16 17 namespace webrtc { 18 19 class MockScreenCapturer : public ScreenCapturer { 20 public: 21 MockScreenCapturer() {} 22 virtual ~MockScreenCapturer() {} 23 24 MOCK_METHOD1(Start, void(Callback* callback)); 25 MOCK_METHOD1(Capture, void(const DesktopRegion& region)); 26 MOCK_METHOD1(GetScreenList, bool(ScreenList* screens)); 27 MOCK_METHOD1(SelectScreen, bool(ScreenId id)); 28 29 private: 30 RTC_DISALLOW_COPY_AND_ASSIGN(MockScreenCapturer); 31 }; 32 33 class MockScreenCapturerCallback : public ScreenCapturer::Callback { 34 public: 35 MockScreenCapturerCallback() {} 36 virtual ~MockScreenCapturerCallback() {} 37 38 MOCK_METHOD1(CreateSharedMemory, SharedMemory*(size_t)); 39 MOCK_METHOD1(OnCaptureCompleted, void(DesktopFrame*)); 40 41 private: 42 RTC_DISALLOW_COPY_AND_ASSIGN(MockScreenCapturerCallback); 43 }; 44 45 } // namespace webrtc 46 47 #endif // WEBRTC_MODULES_DESKTOP_CAPTURE_SCREEN_CAPTURER_MOCK_OBJECTS_H_ 48