Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 <memory> | 5 #include <memory> |
| 6 #include <utility> | 6 #include <utility> |
| 7 | 7 |
| 8 #include "base/run_loop.h" | 8 #include "base/run_loop.h" |
| 9 #include "content/public/test/test_browser_thread_bundle.h" | 9 #include "content/public/test/test_browser_thread_bundle.h" |
| 10 #include "content/renderer/presentation/presentation_connection_proxy.h" | |
| 10 #include "content/renderer/presentation/presentation_dispatcher.h" | 11 #include "content/renderer/presentation/presentation_dispatcher.h" |
| 11 #include "testing/gmock/include/gmock/gmock.h" | 12 #include "testing/gmock/include/gmock/gmock.h" |
| 12 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nAvailabilityObserver.h" | 13 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nAvailabilityObserver.h" |
| 13 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nConnection.h" | 14 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nConnection.h" |
| 14 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nConnectionCallbacks.h" | 15 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nConnectionCallbacks.h" |
| 15 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nController.h" | 16 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nController.h" |
| 16 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nError.h" | 17 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nError.h" |
| 17 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nSessionInfo.h" | 18 #include "third_party/WebKit/public/platform/modules/presentation/WebPresentatio nSessionInfo.h" |
| 18 #include "third_party/WebKit/public/web/WebArrayBuffer.h" | 19 #include "third_party/WebKit/public/web/WebArrayBuffer.h" |
| 19 | 20 |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 105 ListenForConnectionMessagesInternal(session_info.get()); | 106 ListenForConnectionMessagesInternal(session_info.get()); |
| 106 } | 107 } |
| 107 MOCK_METHOD1(ListenForConnectionMessagesInternal, | 108 MOCK_METHOD1(ListenForConnectionMessagesInternal, |
| 108 void(PresentationSessionInfo* session_info)); | 109 void(PresentationSessionInfo* session_info)); |
| 109 | 110 |
| 110 void SetPresentationConnection( | 111 void SetPresentationConnection( |
| 111 blink::mojom::PresentationSessionInfoPtr session, | 112 blink::mojom::PresentationSessionInfoPtr session, |
| 112 blink::mojom::PresentationConnectionPtr controller_conn_ptr, | 113 blink::mojom::PresentationConnectionPtr controller_conn_ptr, |
| 113 blink::mojom::PresentationConnectionRequest receiver_conn_request) | 114 blink::mojom::PresentationConnectionRequest receiver_conn_request) |
| 114 override { | 115 override { |
| 115 SetPresentationConnection(session.get(), controller_conn_ptr.get()); | 116 SetPresentationConnectionInternal(session.get(), controller_conn_ptr.get()); |
| 116 } | 117 } |
| 117 MOCK_METHOD2(SetPresentationConnection, | 118 MOCK_METHOD2(SetPresentationConnectionInternal, |
| 118 void(PresentationSessionInfo* session_info, | 119 void(PresentationSessionInfo* session_info, |
| 119 PresentationConnection* connection)); | 120 PresentationConnection* connection)); |
| 120 }; | 121 }; |
| 121 | 122 |
| 123 class TestPresentationConnection : public blink::WebPresentationConnection { | |
| 124 public: | |
| 125 void setProxy( | |
| 126 std::unique_ptr<blink::WebPresentationConnectionProxy> proxy) override { | |
| 127 proxy_ = std::move(proxy); | |
| 128 } | |
| 129 MOCK_METHOD1(didReceiveTextMessage, void(const WebString& message)); | |
| 130 MOCK_METHOD2(didReceiveBinaryMessage, | |
| 131 void(const uint8_t* data, size_t length)); | |
| 132 MOCK_METHOD1(didChangeState, void(blink::WebPresentationConnectionState)); | |
| 133 | |
| 134 std::unique_ptr<blink::WebPresentationConnectionProxy> proxy_; | |
| 135 }; | |
| 136 | |
| 137 class TestPresentationConnectionProxy : public PresentationConnectionProxy { | |
| 138 public: | |
| 139 TestPresentationConnectionProxy(blink::WebPresentationConnection* connection) | |
| 140 : PresentationConnectionProxy(connection) {} | |
| 141 | |
| 142 void SendConnectionMessage(blink::mojom::ConnectionMessagePtr session_message, | |
| 143 const OnMessageCallback& callback) const override { | |
| 144 SendConnectionMessageInternal(session_message.get(), callback); | |
| 145 } | |
| 146 MOCK_CONST_METHOD2(SendConnectionMessageInternal, | |
| 147 void(blink::mojom::ConnectionMessage*, | |
| 148 const OnMessageCallback&)); | |
| 149 }; | |
| 150 | |
| 122 class TestWebPresentationConnectionCallback | 151 class TestWebPresentationConnectionCallback |
| 123 : public WebPresentationConnectionCallbacks { | 152 : public WebPresentationConnectionCallbacks { |
| 124 public: | 153 public: |
| 125 TestWebPresentationConnectionCallback(WebURL url, WebString id) | 154 TestWebPresentationConnectionCallback(WebURL url, WebString id) |
| 126 : url_(url), id_(id), callback_called_(false) {} | 155 : url_(url), id_(id), callback_called_(false) {} |
| 127 ~TestWebPresentationConnectionCallback() override { | 156 ~TestWebPresentationConnectionCallback() override { |
| 128 EXPECT_TRUE(callback_called_); | 157 EXPECT_TRUE(callback_called_); |
| 129 } | 158 } |
| 130 | 159 |
| 131 void onSuccess(const WebPresentationSessionInfo& info) override { | 160 void onSuccess(const WebPresentationSessionInfo& info) override { |
| 132 callback_called_ = true; | 161 callback_called_ = true; |
| 133 EXPECT_EQ(info.url, url_); | 162 EXPECT_EQ(info.url, url_); |
| 134 EXPECT_EQ(info.id, id_); | 163 EXPECT_EQ(info.id, id_); |
| 135 } | 164 } |
| 136 | 165 |
| 137 blink::WebPresentationConnection* getConnection() override { return nullptr; } | 166 blink::WebPresentationConnection* getConnection() override { |
| 167 return &connection_; | |
| 168 } | |
| 138 | 169 |
| 139 private: | 170 private: |
| 140 const WebURL url_; | 171 const WebURL url_; |
| 141 const WebString id_; | 172 const WebString id_; |
| 142 bool callback_called_; | 173 bool callback_called_; |
| 174 TestPresentationConnection connection_; | |
| 143 }; | 175 }; |
| 144 | 176 |
| 145 class TestWebPresentationConnectionErrorCallback | 177 class TestWebPresentationConnectionErrorCallback |
| 146 : public WebPresentationConnectionCallbacks { | 178 : public WebPresentationConnectionCallbacks { |
| 147 public: | 179 public: |
| 148 TestWebPresentationConnectionErrorCallback( | 180 TestWebPresentationConnectionErrorCallback( |
| 149 WebPresentationError::ErrorType error_type, | 181 WebPresentationError::ErrorType error_type, |
| 150 WebString message) | 182 WebString message) |
| 151 : error_type_(error_type), message_(message), callback_called_(false) {} | 183 : error_type_(error_type), message_(message), callback_called_(false) {} |
| 152 ~TestWebPresentationConnectionErrorCallback() override { | 184 ~TestWebPresentationConnectionErrorCallback() override { |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 222 const WebString presentation_id_; | 254 const WebString presentation_id_; |
| 223 const WebArrayBuffer array_buffer_; | 255 const WebArrayBuffer array_buffer_; |
| 224 MockPresentationAvailabilityObserver observer_; | 256 MockPresentationAvailabilityObserver observer_; |
| 225 MockPresentationService presentation_service_; | 257 MockPresentationService presentation_service_; |
| 226 TestPresentationDispatcher dispatcher_; | 258 TestPresentationDispatcher dispatcher_; |
| 227 | 259 |
| 228 private: | 260 private: |
| 229 content::TestBrowserThreadBundle thread_bundle_; | 261 content::TestBrowserThreadBundle thread_bundle_; |
| 230 }; | 262 }; |
| 231 | 263 |
| 232 TEST_F(PresentationDispatcherTest, TestStartSession) { | 264 TEST_F(PresentationDispatcherTest, TestStartSession) { |
|
mark a. foltz
2017/01/23 22:29:34
Are there expectations covering that the proxies a
zhaobin
2017/01/24 19:28:46
Done.
| |
| 233 base::RunLoop run_loop; | 265 base::RunLoop run_loop; |
| 234 | 266 |
| 267 EXPECT_CALL(presentation_service_, ListenForConnectionMessagesInternal(_)); | |
| 268 EXPECT_CALL(presentation_service_, SetPresentationConnectionInternal(_, _)); | |
| 235 EXPECT_CALL(presentation_service_, StartSession(gurls_, _)) | 269 EXPECT_CALL(presentation_service_, StartSession(gurls_, _)) |
| 236 .WillOnce(Invoke([this]( | 270 .WillOnce(Invoke([this]( |
| 237 const std::vector<GURL>& presentation_urls, | 271 const std::vector<GURL>& presentation_urls, |
| 238 const PresentationService::StartSessionCallback& callback) { | 272 const PresentationService::StartSessionCallback& callback) { |
| 239 PresentationSessionInfoPtr session_info(PresentationSessionInfo::New()); | 273 PresentationSessionInfoPtr session_info(PresentationSessionInfo::New()); |
| 240 session_info->url = gurl1_; | 274 session_info->url = gurl1_; |
| 241 session_info->id = presentation_id_.utf8(); | 275 session_info->id = presentation_id_.utf8(); |
| 242 callback.Run(std::move(session_info), PresentationErrorPtr()); | 276 callback.Run(std::move(session_info), PresentationErrorPtr()); |
| 243 })); | 277 })); |
| 244 dispatcher_.startSession( | 278 dispatcher_.startSession( |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 286 dispatcher_.joinSession( | 320 dispatcher_.joinSession( |
| 287 urls_, presentation_id_, | 321 urls_, presentation_id_, |
| 288 base::MakeUnique<TestWebPresentationConnectionErrorCallback>( | 322 base::MakeUnique<TestWebPresentationConnectionErrorCallback>( |
| 289 WebPresentationError::ErrorTypeNoAvailableScreens, error_message)); | 323 WebPresentationError::ErrorTypeNoAvailableScreens, error_message)); |
| 290 run_loop.RunUntilIdle(); | 324 run_loop.RunUntilIdle(); |
| 291 } | 325 } |
| 292 | 326 |
| 293 TEST_F(PresentationDispatcherTest, TestJoinSession) { | 327 TEST_F(PresentationDispatcherTest, TestJoinSession) { |
| 294 base::RunLoop run_loop; | 328 base::RunLoop run_loop; |
| 295 | 329 |
| 330 EXPECT_CALL(presentation_service_, ListenForConnectionMessagesInternal(_)); | |
| 331 EXPECT_CALL(presentation_service_, SetPresentationConnectionInternal(_, _)); | |
| 296 EXPECT_CALL(presentation_service_, JoinSession(gurls_, _, _)) | 332 EXPECT_CALL(presentation_service_, JoinSession(gurls_, _, _)) |
| 297 .WillOnce(Invoke([this]( | 333 .WillOnce(Invoke([this]( |
| 298 const std::vector<GURL>& presentation_urls, | 334 const std::vector<GURL>& presentation_urls, |
| 299 const base::Optional<std::string>& presentation_id, | 335 const base::Optional<std::string>& presentation_id, |
| 300 const PresentationService::JoinSessionCallback& callback) { | 336 const PresentationService::JoinSessionCallback& callback) { |
| 301 EXPECT_TRUE(presentation_id.has_value()); | 337 EXPECT_TRUE(presentation_id.has_value()); |
| 302 EXPECT_EQ(presentation_id_.utf8(), presentation_id.value()); | 338 EXPECT_EQ(presentation_id_.utf8(), presentation_id.value()); |
| 303 PresentationSessionInfoPtr session_info(PresentationSessionInfo::New()); | 339 PresentationSessionInfoPtr session_info(PresentationSessionInfo::New()); |
| 304 session_info->url = gurl1_; | 340 session_info->url = gurl1_; |
| 305 session_info->id = presentation_id_.utf8(); | 341 session_info->id = presentation_id_.utf8(); |
| 306 callback.Run(std::move(session_info), PresentationErrorPtr()); | 342 callback.Run(std::move(session_info), PresentationErrorPtr()); |
| 307 })); | 343 })); |
| 308 dispatcher_.joinSession( | 344 dispatcher_.joinSession( |
| 309 urls_, presentation_id_, | 345 urls_, presentation_id_, |
| 310 base::MakeUnique<TestWebPresentationConnectionCallback>( | 346 base::MakeUnique<TestWebPresentationConnectionCallback>( |
| 311 url1_, presentation_id_)); | 347 url1_, presentation_id_)); |
| 312 run_loop.RunUntilIdle(); | 348 run_loop.RunUntilIdle(); |
| 313 } | 349 } |
| 314 | 350 |
| 315 TEST_F(PresentationDispatcherTest, TestSendString) { | 351 TEST_F(PresentationDispatcherTest, TestSendString) { |
| 316 WebString message = WebString::fromUTF8("test message"); | 352 WebString message = WebString::fromUTF8("test message"); |
| 353 TestPresentationConnection connection; | |
| 354 TestPresentationConnectionProxy connection_proxy(&connection); | |
| 355 | |
| 317 base::RunLoop run_loop; | 356 base::RunLoop run_loop; |
| 318 EXPECT_CALL(presentation_service_, SendConnectionMessageInternal(_, _, _)) | 357 EXPECT_CALL(connection_proxy, SendConnectionMessageInternal(_, _)) |
| 319 .WillOnce(Invoke([this, &message]( | 358 .WillOnce(Invoke([this, &message](ConnectionMessage* session_message, |
| 320 PresentationSessionInfo* session_info, | 359 const OnMessageCallback& callback) { |
| 321 ConnectionMessage* message_request, | 360 EXPECT_EQ(blink::mojom::PresentationMessageType::TEXT, |
| 322 const PresentationService::SendConnectionMessageCallback& callback) { | 361 session_message->type); |
| 323 EXPECT_EQ(gurl1_, session_info->url); | 362 EXPECT_EQ(message.utf8(), session_message->message.value()); |
| 324 EXPECT_EQ(presentation_id_.utf8(), session_info->id); | |
| 325 EXPECT_TRUE(message_request->message.has_value()); | |
| 326 EXPECT_EQ(message.utf8(), message_request->message.value()); | |
| 327 callback.Run(true); | |
| 328 })); | 363 })); |
| 329 dispatcher_.sendString(url1_, presentation_id_, message, nullptr); | 364 dispatcher_.sendString(url1_, presentation_id_, message, &connection_proxy); |
| 330 run_loop.RunUntilIdle(); | 365 run_loop.RunUntilIdle(); |
| 331 } | 366 } |
| 332 | 367 |
| 333 TEST_F(PresentationDispatcherTest, TestSendArrayBuffer) { | 368 TEST_F(PresentationDispatcherTest, TestSendArrayBuffer) { |
| 369 TestPresentationConnection connection; | |
| 370 TestPresentationConnectionProxy connection_proxy(&connection); | |
| 371 | |
| 334 base::RunLoop run_loop; | 372 base::RunLoop run_loop; |
| 335 EXPECT_CALL(presentation_service_, SendConnectionMessageInternal(_, _, _)) | 373 EXPECT_CALL(connection_proxy, SendConnectionMessageInternal(_, _)) |
| 336 .WillOnce(Invoke([this]( | 374 .WillOnce(Invoke([this](ConnectionMessage* message_request, |
| 337 PresentationSessionInfo* session_info, | 375 const OnMessageCallback& callback) { |
| 338 ConnectionMessage* message_request, | |
| 339 const PresentationService::SendConnectionMessageCallback& callback) { | |
| 340 EXPECT_EQ(gurl1_, session_info->url); | |
| 341 EXPECT_EQ(presentation_id_.utf8(), session_info->id); | |
| 342 std::vector<uint8_t> data( | 376 std::vector<uint8_t> data( |
| 343 array_buffer_data(), | 377 array_buffer_data(), |
| 344 array_buffer_data() + array_buffer_.byteLength()); | 378 array_buffer_data() + array_buffer_.byteLength()); |
| 345 EXPECT_TRUE(message_request->data.has_value()); | 379 EXPECT_TRUE(message_request->data.has_value()); |
| 346 EXPECT_EQ(data, message_request->data.value()); | 380 EXPECT_EQ(data, message_request->data.value()); |
| 347 callback.Run(true); | |
| 348 })); | 381 })); |
| 349 dispatcher_.sendArrayBuffer(url1_, presentation_id_, array_buffer_data(), | 382 dispatcher_.sendArrayBuffer(url1_, presentation_id_, array_buffer_data(), |
| 350 array_buffer_.byteLength(), nullptr); | 383 array_buffer_.byteLength(), &connection_proxy); |
| 351 run_loop.RunUntilIdle(); | 384 run_loop.RunUntilIdle(); |
| 352 } | 385 } |
| 353 | 386 |
| 354 TEST_F(PresentationDispatcherTest, TestSendBlobData) { | 387 TEST_F(PresentationDispatcherTest, TestSendBlobData) { |
|
mark a. foltz
2017/01/23 22:29:34
Does there need to be a test case added for OnRece
zhaobin
2017/01/24 19:28:46
Done.
| |
| 388 TestPresentationConnection connection; | |
| 389 TestPresentationConnectionProxy connection_proxy(&connection); | |
| 390 | |
| 355 base::RunLoop run_loop; | 391 base::RunLoop run_loop; |
| 356 EXPECT_CALL(presentation_service_, SendConnectionMessageInternal(_, _, _)) | 392 EXPECT_CALL(connection_proxy, SendConnectionMessageInternal(_, _)) |
| 357 .WillOnce(Invoke([this]( | 393 .WillOnce(Invoke([this](ConnectionMessage* message_request, |
| 358 PresentationSessionInfo* session_info, | 394 const OnMessageCallback& callback) { |
| 359 ConnectionMessage* message_request, | |
| 360 const PresentationService::SendConnectionMessageCallback& callback) { | |
| 361 EXPECT_EQ(gurl1_, session_info->url); | |
| 362 EXPECT_EQ(presentation_id_.utf8(), session_info->id); | |
| 363 std::vector<uint8_t> data( | 395 std::vector<uint8_t> data( |
| 364 array_buffer_data(), | 396 array_buffer_data(), |
| 365 array_buffer_data() + array_buffer_.byteLength()); | 397 array_buffer_data() + array_buffer_.byteLength()); |
| 366 EXPECT_TRUE(message_request->data.has_value()); | 398 EXPECT_TRUE(message_request->data.has_value()); |
| 367 EXPECT_EQ(data, message_request->data.value()); | 399 EXPECT_EQ(data, message_request->data.value()); |
| 368 callback.Run(true); | 400 callback.Run(true); |
| 369 })); | 401 })); |
| 370 dispatcher_.sendBlobData(url1_, presentation_id_, array_buffer_data(), | 402 dispatcher_.sendBlobData(url1_, presentation_id_, array_buffer_data(), |
| 371 array_buffer_.byteLength(), nullptr); | 403 array_buffer_.byteLength(), &connection_proxy); |
| 372 run_loop.RunUntilIdle(); | 404 run_loop.RunUntilIdle(); |
| 373 } | 405 } |
| 374 | 406 |
| 375 TEST_F(PresentationDispatcherTest, TestCloseSession) { | 407 TEST_F(PresentationDispatcherTest, TestCloseSession) { |
| 376 base::RunLoop run_loop; | 408 base::RunLoop run_loop; |
| 377 EXPECT_CALL(presentation_service_, | 409 EXPECT_CALL(presentation_service_, |
| 378 CloseConnection(gurl1_, presentation_id_.utf8())); | 410 CloseConnection(gurl1_, presentation_id_.utf8())); |
| 379 dispatcher_.closeSession(url1_, presentation_id_); | 411 dispatcher_.closeSession(url1_, presentation_id_); |
| 380 run_loop.RunUntilIdle(); | 412 run_loop.RunUntilIdle(); |
| 381 } | 413 } |
| 382 | 414 |
| 383 TEST_F(PresentationDispatcherTest, TestTerminateSession) { | 415 TEST_F(PresentationDispatcherTest, TestTerminateSession) { |
| 384 base::RunLoop run_loop; | 416 base::RunLoop run_loop; |
| 385 EXPECT_CALL(presentation_service_, | 417 EXPECT_CALL(presentation_service_, |
| 386 Terminate(gurl1_, presentation_id_.utf8())); | 418 Terminate(gurl1_, presentation_id_.utf8())); |
| 387 dispatcher_.terminateSession(url1_, presentation_id_); | 419 dispatcher_.terminateSession(url1_, presentation_id_); |
| 388 run_loop.RunUntilIdle(); | 420 run_loop.RunUntilIdle(); |
| 389 } | 421 } |
| 390 | 422 |
| 391 TEST_F(PresentationDispatcherTest, TestListenForScreenAvailability) { | 423 TEST_F(PresentationDispatcherTest, TestListenForScreenAvailability) { |
| 392 base::RunLoop run_loop1; | 424 base::RunLoop run_loop1; |
| 393 EXPECT_CALL(presentation_service_, ListenForScreenAvailability(gurl1_)); | 425 EXPECT_CALL(presentation_service_, ListenForScreenAvailability(gurl1_)); |
| 394 dispatcher_.getAvailability( | 426 dispatcher_.getAvailability( |
| 395 url1_, base::MakeUnique<WebPresentationAvailabilityCallbacks>()); | 427 url1_, base::MakeUnique<WebPresentationAvailabilityCallbacks>()); |
| 396 dispatcher_.OnScreenAvailabilityUpdated(url1_, true); | 428 dispatcher_.OnScreenAvailabilityUpdated(url1_, true); |
| 429 EXPECT_CALL(presentation_service_, | |
| 430 StopListeningForScreenAvailability(gurl1_)); | |
| 397 run_loop1.RunUntilIdle(); | 431 run_loop1.RunUntilIdle(); |
| 398 | 432 |
| 399 base::RunLoop run_loop2; | 433 base::RunLoop run_loop2; |
| 400 EXPECT_CALL(presentation_service_, ListenForScreenAvailability(gurl1_)); | 434 EXPECT_CALL(presentation_service_, ListenForScreenAvailability(gurl1_)); |
| 401 dispatcher_.startListening(&observer_); | 435 dispatcher_.startListening(&observer_); |
| 402 run_loop2.RunUntilIdle(); | 436 run_loop2.RunUntilIdle(); |
| 403 | 437 |
| 404 base::RunLoop run_loop3; | 438 base::RunLoop run_loop3; |
| 405 EXPECT_CALL(observer_, availabilityChanged(false)); | 439 EXPECT_CALL(observer_, availabilityChanged(false)); |
| 406 dispatcher_.OnScreenAvailabilityUpdated(url1_, false); | 440 dispatcher_.OnScreenAvailabilityUpdated(url1_, false); |
| (...skipping 12 matching lines...) Expand all Loading... | |
| 419 } | 453 } |
| 420 | 454 |
| 421 TEST_F(PresentationDispatcherTest, TestSetDefaultPresentationUrls) { | 455 TEST_F(PresentationDispatcherTest, TestSetDefaultPresentationUrls) { |
| 422 base::RunLoop run_loop; | 456 base::RunLoop run_loop; |
| 423 EXPECT_CALL(presentation_service_, SetDefaultPresentationUrls(gurls_)); | 457 EXPECT_CALL(presentation_service_, SetDefaultPresentationUrls(gurls_)); |
| 424 dispatcher_.setDefaultPresentationUrls(urls_); | 458 dispatcher_.setDefaultPresentationUrls(urls_); |
| 425 run_loop.RunUntilIdle(); | 459 run_loop.RunUntilIdle(); |
| 426 } | 460 } |
| 427 | 461 |
| 428 } // namespace content | 462 } // namespace content |
| OLD | NEW |