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

Side by Side Diff: extensions/browser/api/cast_channel/cast_channel_apitest.cc

Issue 2937153002: [cast_channel] Create KeepAliveDelegate in CastSocket instead of in CastChannelOpenFunction (Closed)
Patch Set: rebase with master Created 3 years, 6 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
« no previous file with comments | « extensions/browser/api/cast_channel/cast_channel_api.cc ('k') | no next file » | 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/command_line.h" 6 #include "base/command_line.h"
7 #include "base/files/file_path.h" 7 #include "base/files/file_path.h"
8 #include "base/memory/ptr_util.h" 8 #include "base/memory/ptr_util.h"
9 #include "base/timer/mock_timer.h" 9 #include "base/timer/mock_timer.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 CastChannelAPITest() : ip_endpoint_(CreateIPEndPointForTest()) {} 83 CastChannelAPITest() : ip_endpoint_(CreateIPEndPointForTest()) {}
84 84
85 void SetUpCommandLine(base::CommandLine* command_line) override { 85 void SetUpCommandLine(base::CommandLine* command_line) override {
86 ExtensionApiTest::SetUpCommandLine(command_line); 86 ExtensionApiTest::SetUpCommandLine(command_line);
87 command_line->AppendSwitchASCII( 87 command_line->AppendSwitchASCII(
88 extensions::switches::kWhitelistedExtensionID, kTestExtensionId); 88 extensions::switches::kWhitelistedExtensionID, kTestExtensionId);
89 } 89 }
90 90
91 void SetUpMockCastSocket() { 91 void SetUpMockCastSocket() {
92 extensions::CastChannelAPI* api = GetApi(); 92 extensions::CastChannelAPI* api = GetApi();
93 timeout_timer_ = new base::MockTimer(true, false);
94 api->SetPingTimeoutTimerForTest(base::WrapUnique(timeout_timer_));
95 93
96 net::IPEndPoint ip_endpoint(net::IPAddress(192, 168, 1, 1), 8009); 94 net::IPEndPoint ip_endpoint(net::IPAddress(192, 168, 1, 1), 8009);
97 mock_cast_socket_ = new MockCastSocket; 95 mock_cast_socket_ = new MockCastSocket;
98 // Transfers ownership of the socket. 96 // Transfers ownership of the socket.
99 api->SetSocketForTest(base::WrapUnique<CastSocket>(mock_cast_socket_)); 97 api->SetSocketForTest(base::WrapUnique<CastSocket>(mock_cast_socket_));
100 ON_CALL(*mock_cast_socket_, set_id(_)) 98 ON_CALL(*mock_cast_socket_, set_id(_))
101 .WillByDefault(SaveArg<0>(&channel_id_)); 99 .WillByDefault(SaveArg<0>(&channel_id_));
102 ON_CALL(*mock_cast_socket_, id()) 100 ON_CALL(*mock_cast_socket_, id())
103 .WillByDefault(ReturnPointee(&channel_id_)); 101 .WillByDefault(ReturnPointee(&channel_id_));
104 ON_CALL(*mock_cast_socket_, ip_endpoint()) 102 ON_CALL(*mock_cast_socket_, ip_endpoint())
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 content::BrowserThread::PostTask( 178 content::BrowserThread::PostTask(
181 content::BrowserThread::IO, FROM_HERE, 179 content::BrowserThread::IO, FROM_HERE,
182 base::Bind(&CastTransport::Delegate::Start, 180 base::Bind(&CastTransport::Delegate::Start,
183 base::Unretained(message_delegate_))); 181 base::Unretained(message_delegate_)));
184 } 182 }
185 183
186 // Fires a timer on the IO thread. 184 // Fires a timer on the IO thread.
187 void FireTimeout() { 185 void FireTimeout() {
188 content::BrowserThread::PostTask( 186 content::BrowserThread::PostTask(
189 content::BrowserThread::IO, FROM_HERE, 187 content::BrowserThread::IO, FROM_HERE,
190 base::Bind(&base::MockTimer::Fire, base::Unretained(timeout_timer_))); 188 base::Bind(&CastTransport::Delegate::OnError,
189 base::Unretained(message_delegate_),
190 cast_channel::ChannelError::PING_TIMEOUT));
191 } 191 }
192 192
193 extensions::CastChannelOpenFunction* CreateOpenFunction( 193 extensions::CastChannelOpenFunction* CreateOpenFunction(
194 scoped_refptr<Extension> extension) { 194 scoped_refptr<Extension> extension) {
195 extensions::CastChannelOpenFunction* cast_channel_open_function = 195 extensions::CastChannelOpenFunction* cast_channel_open_function =
196 new extensions::CastChannelOpenFunction; 196 new extensions::CastChannelOpenFunction;
197 cast_channel_open_function->set_extension(extension.get()); 197 cast_channel_open_function->set_extension(extension.get());
198 return cast_channel_open_function; 198 return cast_channel_open_function;
199 } 199 }
200 200
201 extensions::CastChannelSendFunction* CreateSendFunction( 201 extensions::CastChannelSendFunction* CreateSendFunction(
202 scoped_refptr<Extension> extension) { 202 scoped_refptr<Extension> extension) {
203 extensions::CastChannelSendFunction* cast_channel_send_function = 203 extensions::CastChannelSendFunction* cast_channel_send_function =
204 new extensions::CastChannelSendFunction; 204 new extensions::CastChannelSendFunction;
205 cast_channel_send_function->set_extension(extension.get()); 205 cast_channel_send_function->set_extension(extension.get());
206 return cast_channel_send_function; 206 return cast_channel_send_function;
207 } 207 }
208 208
209 MockCastSocket* mock_cast_socket_; 209 MockCastSocket* mock_cast_socket_;
210 base::MockTimer* timeout_timer_;
211 net::IPEndPoint ip_endpoint_; 210 net::IPEndPoint ip_endpoint_;
212 LastError last_error_; 211 LastError last_error_;
213 CastTransport::Delegate* message_delegate_; 212 CastTransport::Delegate* message_delegate_;
214 net::TestNetLog capturing_net_log_; 213 net::TestNetLog capturing_net_log_;
215 int channel_id_; 214 int channel_id_;
216 }; 215 };
217 216
218 ACTION_P2(InvokeDelegateOnError, api_test, api) { 217 ACTION_P2(InvokeDelegateOnError, api_test, api) {
219 content::BrowserThread::PostTask( 218 content::BrowserThread::PostTask(
220 content::BrowserThread::IO, FROM_HERE, 219 content::BrowserThread::IO, FROM_HERE,
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
428 "\"keepAlive\": true, " 427 "\"keepAlive\": true, "
429 "\"audioOnly\": false, " 428 "\"audioOnly\": false, "
430 "\"connectInfo\": " 429 "\"connectInfo\": "
431 "{\"ipAddress\": \"127.0.0.1\", \"port\": 8009, " 430 "{\"ipAddress\": \"127.0.0.1\", \"port\": 8009, "
432 "\"auth\": \"ssl_verified\"}, \"readyState\": \"open\"}, " 431 "\"auth\": \"ssl_verified\"}, \"readyState\": \"open\"}, "
433 "{\"namespace_\": \"foo\", \"sourceId\": \"src\", " 432 "{\"namespace_\": \"foo\", \"sourceId\": \"src\", "
434 "\"destinationId\": \"\", \"data\": \"data\"}]", 433 "\"destinationId\": \"\", \"data\": \"data\"}]",
435 browser()); 434 browser());
436 EXPECT_EQ(error, "message_info.destination_id is required"); 435 EXPECT_EQ(error, "message_info.destination_id is required");
437 } 436 }
OLDNEW
« no previous file with comments | « extensions/browser/api/cast_channel/cast_channel_api.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698