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

Side by Side Diff: remoting/host/host_extension_session_manager_unittest.cc

Issue 455073004: Switch DesktopEnvironment to return a DesktopCapturer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove ShapedDesktopCapturer::Create() Created 6 years, 4 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « remoting/host/host_extension_session_manager.cc ('k') | remoting/host/host_mock_objects.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "remoting/codec/video_encoder.h" 5 #include "remoting/codec/video_encoder.h"
6 #include "remoting/host/fake_host_extension.h" 6 #include "remoting/host/fake_host_extension.h"
7 #include "remoting/host/host_extension_session_manager.h" 7 #include "remoting/host/host_extension_session_manager.h"
8 #include "remoting/host/host_mock_objects.h" 8 #include "remoting/host/host_mock_objects.h"
9 #include "remoting/proto/control.pb.h" 9 #include "remoting/proto/control.pb.h"
10 #include "remoting/protocol/protocol_mock_objects.h" 10 #include "remoting/protocol/protocol_mock_objects.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 #include "third_party/webrtc/modules/desktop_capture/screen_capturer.h" 12 #include "third_party/webrtc/modules/desktop_capture/desktop_capturer.h"
13 13
14 namespace remoting { 14 namespace remoting {
15 15
16 class HostExtensionSessionManagerTest : public testing::Test { 16 class HostExtensionSessionManagerTest : public testing::Test {
17 public: 17 public:
18 HostExtensionSessionManagerTest() 18 HostExtensionSessionManagerTest()
19 : extension1_("ext1", "cap1"), 19 : extension1_("ext1", "cap1"),
20 extension2_("ext2", ""), 20 extension2_("ext2", ""),
21 extension3_("ext3", "cap3") { 21 extension3_("ext3", "cap3") {
22 extensions_.push_back(&extension1_); 22 extensions_.push_back(&extension1_);
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 TEST_F(HostExtensionSessionManagerTest, CanWrapVideoCapturer) { 100 TEST_F(HostExtensionSessionManagerTest, CanWrapVideoCapturer) {
101 HostExtensionSessionManager extension_manager(extensions_, 101 HostExtensionSessionManager extension_manager(extensions_,
102 &client_session_control_); 102 &client_session_control_);
103 103
104 // Set up all the extensions to request to modify the video pipeline. 104 // Set up all the extensions to request to modify the video pipeline.
105 extension1_.set_steal_video_capturer(true); 105 extension1_.set_steal_video_capturer(true);
106 extension2_.set_steal_video_capturer(true); 106 extension2_.set_steal_video_capturer(true);
107 extension3_.set_steal_video_capturer(true); 107 extension3_.set_steal_video_capturer(true);
108 extension_manager.OnNegotiatedCapabilities(&client_stub_, "cap1"); 108 extension_manager.OnNegotiatedCapabilities(&client_stub_, "cap1");
109 109
110 extension_manager.OnCreateVideoCapturer(scoped_ptr<webrtc::ScreenCapturer>()); 110 extension_manager.OnCreateVideoCapturer(
111 scoped_ptr<webrtc::DesktopCapturer>());
111 112
112 EXPECT_FALSE(extension1_.has_wrapped_video_encoder()); 113 EXPECT_FALSE(extension1_.has_wrapped_video_encoder());
113 EXPECT_TRUE(extension1_.has_wrapped_video_capturer()); 114 EXPECT_TRUE(extension1_.has_wrapped_video_capturer());
114 EXPECT_FALSE(extension2_.has_wrapped_video_encoder()); 115 EXPECT_FALSE(extension2_.has_wrapped_video_encoder());
115 EXPECT_TRUE(extension2_.has_wrapped_video_capturer()); 116 EXPECT_TRUE(extension2_.has_wrapped_video_capturer());
116 EXPECT_FALSE(extension3_.was_instantiated()); 117 EXPECT_FALSE(extension3_.was_instantiated());
117 } 118 }
118 119
119 // Verifies that matching extensions are given the opportunity to wrap or 120 // Verifies that matching extensions are given the opportunity to wrap or
120 // replace the video encoders. 121 // replace the video encoders.
(...skipping 19 matching lines...) Expand all
140 // Verifies that only extensions which report that they modify the video 141 // Verifies that only extensions which report that they modify the video
141 // pipeline actually get called to modify it. 142 // pipeline actually get called to modify it.
142 TEST_F(HostExtensionSessionManagerTest, RespectModifiesVideoPipeline) { 143 TEST_F(HostExtensionSessionManagerTest, RespectModifiesVideoPipeline) {
143 HostExtensionSessionManager extension_manager(extensions_, 144 HostExtensionSessionManager extension_manager(extensions_,
144 &client_session_control_); 145 &client_session_control_);
145 146
146 // Set up the second extension to request to modify the video pipeline. 147 // Set up the second extension to request to modify the video pipeline.
147 extension2_.set_steal_video_capturer(true); 148 extension2_.set_steal_video_capturer(true);
148 extension_manager.OnNegotiatedCapabilities(&client_stub_, "cap1"); 149 extension_manager.OnNegotiatedCapabilities(&client_stub_, "cap1");
149 150
150 extension_manager.OnCreateVideoCapturer(scoped_ptr<webrtc::ScreenCapturer>()); 151 extension_manager.OnCreateVideoCapturer(
152 scoped_ptr<webrtc::DesktopCapturer>());
151 extension_manager.OnCreateVideoEncoder(scoped_ptr<VideoEncoder>()); 153 extension_manager.OnCreateVideoEncoder(scoped_ptr<VideoEncoder>());
152 154
153 EXPECT_FALSE(extension1_.has_wrapped_video_encoder()); 155 EXPECT_FALSE(extension1_.has_wrapped_video_encoder());
154 EXPECT_FALSE(extension1_.has_wrapped_video_capturer()); 156 EXPECT_FALSE(extension1_.has_wrapped_video_capturer());
155 EXPECT_TRUE(extension2_.has_wrapped_video_encoder()); 157 EXPECT_TRUE(extension2_.has_wrapped_video_encoder());
156 EXPECT_TRUE(extension2_.has_wrapped_video_capturer()); 158 EXPECT_TRUE(extension2_.has_wrapped_video_capturer());
157 EXPECT_FALSE(extension3_.was_instantiated()); 159 EXPECT_FALSE(extension3_.was_instantiated());
158 } 160 }
159 161
160 // Verifies that if an extension reports that they modify the video pipeline 162 // Verifies that if an extension reports that they modify the video pipeline
161 // then ResetVideoPipeline() is called on the ClientSessionControl interface. 163 // then ResetVideoPipeline() is called on the ClientSessionControl interface.
162 TEST_F(HostExtensionSessionManagerTest, CallsResetVideoPipeline) { 164 TEST_F(HostExtensionSessionManagerTest, CallsResetVideoPipeline) {
163 HostExtensionSessionManager extension_manager(extensions_, 165 HostExtensionSessionManager extension_manager(extensions_,
164 &client_session_control_); 166 &client_session_control_);
165 167
166 EXPECT_CALL(client_session_control_, ResetVideoPipeline()); 168 EXPECT_CALL(client_session_control_, ResetVideoPipeline());
167 169
168 // Set up only the first extension to request to modify the video pipeline. 170 // Set up only the first extension to request to modify the video pipeline.
169 extension1_.set_steal_video_capturer(true); 171 extension1_.set_steal_video_capturer(true);
170 172
171 extension_manager.OnNegotiatedCapabilities(&client_stub_, "cap1"); 173 extension_manager.OnNegotiatedCapabilities(&client_stub_, "cap1");
172 } 174 }
173 175
174 176
175 } // namespace remoting 177 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/host/host_extension_session_manager.cc ('k') | remoting/host/host_mock_objects.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698