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

Side by Side Diff: content/renderer/presentation/presentation_dispatcher_unittest.cc

Issue 2943033003: [PresentationSevice] Use PresentationConnection to send messages from (Closed)
Patch Set: LOG -> DLOG 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
OLDNEW
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/common/presentation_connection_message.h" 9 #include "content/public/common/presentation_connection_message.h"
10 #include "content/public/test/test_browser_thread_bundle.h" 10 #include "content/public/test/test_browser_thread_bundle.h"
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 MOCK_METHOD2(SetPresentationConnection, 99 MOCK_METHOD2(SetPresentationConnection,
100 void(const PresentationInfo& presentation_info, 100 void(const PresentationInfo& presentation_info,
101 PresentationConnection* connection)); 101 PresentationConnection* connection));
102 102
103 MOCK_METHOD2(CloseConnection, 103 MOCK_METHOD2(CloseConnection,
104 void(const GURL& presentation_url, 104 void(const GURL& presentation_url,
105 const std::string& presentation_id)); 105 const std::string& presentation_id));
106 MOCK_METHOD2(Terminate, 106 MOCK_METHOD2(Terminate,
107 void(const GURL& presentation_url, 107 void(const GURL& presentation_url,
108 const std::string& presentation_id)); 108 const std::string& presentation_id));
109 MOCK_METHOD1(ListenForConnectionMessages,
110 void(const PresentationInfo& presentation_info));
111 }; 109 };
112 110
113 class TestPresentationConnectionProxy : public PresentationConnectionProxy { 111 class TestPresentationConnectionProxy : public PresentationConnectionProxy {
114 public: 112 public:
115 TestPresentationConnectionProxy(blink::WebPresentationConnection* connection) 113 TestPresentationConnectionProxy(blink::WebPresentationConnection* connection)
116 : PresentationConnectionProxy(connection) {} 114 : PresentationConnectionProxy(connection) {}
117 115
118 // PresentationConnectionMessage is move-only. 116 // PresentationConnectionMessage is move-only.
119 void SendConnectionMessage(PresentationConnectionMessage message, 117 void SendConnectionMessage(PresentationConnectionMessage message,
120 OnMessageCallback cb) const { 118 OnMessageCallback cb) const {
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after
331 329
332 private: 330 private:
333 content::TestBrowserThreadBundle thread_bundle_; 331 content::TestBrowserThreadBundle thread_bundle_;
334 }; 332 };
335 333
336 TEST_F(PresentationDispatcherTest, TestStartPresentation) { 334 TEST_F(PresentationDispatcherTest, TestStartPresentation) {
337 TestPresentationConnection connection; 335 TestPresentationConnection connection;
338 EXPECT_FALSE(connection.proxy()); 336 EXPECT_FALSE(connection.proxy());
339 { 337 {
340 base::RunLoop run_loop; 338 base::RunLoop run_loop;
341 EXPECT_CALL(presentation_service_, ListenForConnectionMessages(_));
342 EXPECT_CALL(presentation_service_, SetPresentationConnection(_, _)); 339 EXPECT_CALL(presentation_service_, SetPresentationConnection(_, _));
343 EXPECT_CALL(presentation_service_, StartPresentationInternal(gurls_, _)) 340 EXPECT_CALL(presentation_service_, StartPresentationInternal(gurls_, _))
344 .WillOnce(Invoke( 341 .WillOnce(Invoke(
345 [this](const std::vector<GURL>& presentation_urls, 342 [this](const std::vector<GURL>& presentation_urls,
346 PresentationService::StartPresentationCallback& callback) { 343 PresentationService::StartPresentationCallback& callback) {
347 PresentationInfo presentation_info(gurl1_, 344 PresentationInfo presentation_info(gurl1_,
348 presentation_id_.Utf8()); 345 presentation_id_.Utf8());
349 std::move(callback).Run(presentation_info, base::nullopt); 346 std::move(callback).Run(presentation_info, base::nullopt);
350 })); 347 }));
351 348
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 base::MakeUnique<TestWebPresentationConnectionErrorCallback>( 400 base::MakeUnique<TestWebPresentationConnectionErrorCallback>(
404 WebPresentationError::kErrorTypeNoAvailableScreens, error_message)); 401 WebPresentationError::kErrorTypeNoAvailableScreens, error_message));
405 run_loop.RunUntilIdle(); 402 run_loop.RunUntilIdle();
406 } 403 }
407 404
408 TEST_F(PresentationDispatcherTest, TestReconnectPresentation) { 405 TEST_F(PresentationDispatcherTest, TestReconnectPresentation) {
409 TestPresentationConnection connection; 406 TestPresentationConnection connection;
410 EXPECT_FALSE(connection.proxy()); 407 EXPECT_FALSE(connection.proxy());
411 { 408 {
412 base::RunLoop run_loop; 409 base::RunLoop run_loop;
413 EXPECT_CALL(presentation_service_, ListenForConnectionMessages(_));
414 EXPECT_CALL(presentation_service_, SetPresentationConnection(_, _)); 410 EXPECT_CALL(presentation_service_, SetPresentationConnection(_, _));
415 EXPECT_CALL(presentation_service_, 411 EXPECT_CALL(presentation_service_,
416 ReconnectPresentationInternal(gurls_, _, _)) 412 ReconnectPresentationInternal(gurls_, _, _))
417 .WillOnce(Invoke( 413 .WillOnce(Invoke(
418 [this]( 414 [this](
419 const std::vector<GURL>& presentation_urls, 415 const std::vector<GURL>& presentation_urls,
420 const base::Optional<std::string>& presentation_id, 416 const base::Optional<std::string>& presentation_id,
421 PresentationService::ReconnectPresentationCallback& callback) { 417 PresentationService::ReconnectPresentationCallback& callback) {
422 EXPECT_TRUE(presentation_id.has_value()); 418 EXPECT_TRUE(presentation_id.has_value());
423 EXPECT_EQ(presentation_id_.Utf8(), presentation_id.value()); 419 EXPECT_EQ(presentation_id_.Utf8(), presentation_id.value());
(...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after
869 EXPECT_CALL(*mock_observer, 865 EXPECT_CALL(*mock_observer,
870 AvailabilityChanged(ScreenAvailability::SOURCE_NOT_SUPPORTED)); 866 AvailabilityChanged(ScreenAvailability::SOURCE_NOT_SUPPORTED));
871 } 867 }
872 868
873 base::RunLoop run_loop_3; 869 base::RunLoop run_loop_3;
874 ChangeURLState(gurl2_, ScreenAvailability::SOURCE_NOT_SUPPORTED); 870 ChangeURLState(gurl2_, ScreenAvailability::SOURCE_NOT_SUPPORTED);
875 run_loop_3.RunUntilIdle(); 871 run_loop_3.RunUntilIdle();
876 } 872 }
877 873
878 } // namespace content 874 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698