OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "content/browser/presentation/presentation_service_impl.h" | 5 #include "content/browser/presentation/presentation_service_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
273 } | 273 } |
274 | 274 |
275 void ExpectCleanState() { | 275 void ExpectCleanState() { |
276 EXPECT_TRUE(service_impl_->default_presentation_url_.empty()); | 276 EXPECT_TRUE(service_impl_->default_presentation_url_.empty()); |
277 EXPECT_EQ( | 277 EXPECT_EQ( |
278 service_impl_->screen_availability_listeners_.find(kPresentationUrl), | 278 service_impl_->screen_availability_listeners_.find(kPresentationUrl), |
279 service_impl_->screen_availability_listeners_.end()); | 279 service_impl_->screen_availability_listeners_.end()); |
280 EXPECT_FALSE(service_impl_->on_session_messages_callback_.get()); | 280 EXPECT_FALSE(service_impl_->on_session_messages_callback_.get()); |
281 } | 281 } |
282 | 282 |
283 void ExpectNewSessionCallbackSuccess( | 283 void ExpectNewSessionMojoCallbackSuccess( |
284 blink::mojom::PresentationSessionInfoPtr info, | 284 blink::mojom::PresentationSessionInfoPtr info, |
285 blink::mojom::PresentationErrorPtr error) { | 285 blink::mojom::PresentationErrorPtr error) { |
286 EXPECT_FALSE(info.is_null()); | 286 EXPECT_FALSE(info.is_null()); |
287 EXPECT_TRUE(error.is_null()); | 287 EXPECT_TRUE(error.is_null()); |
288 if (!run_loop_quit_closure_.is_null()) | 288 if (!run_loop_quit_closure_.is_null()) |
289 run_loop_quit_closure_.Run(); | 289 run_loop_quit_closure_.Run(); |
290 } | 290 } |
291 | 291 |
292 void ExpectNewSessionCallbackError( | 292 void ExpectNewSessionMojoCallbackError( |
293 blink::mojom::PresentationSessionInfoPtr info, | 293 blink::mojom::PresentationSessionInfoPtr info, |
294 blink::mojom::PresentationErrorPtr error) { | 294 blink::mojom::PresentationErrorPtr error) { |
295 EXPECT_TRUE(info.is_null()); | 295 EXPECT_TRUE(info.is_null()); |
296 EXPECT_FALSE(error.is_null()); | 296 EXPECT_FALSE(error.is_null()); |
297 if (!run_loop_quit_closure_.is_null()) | 297 if (!run_loop_quit_closure_.is_null()) |
298 run_loop_quit_closure_.Run(); | 298 run_loop_quit_closure_.Run(); |
299 } | 299 } |
300 | 300 |
301 void ExpectSessionMessages( | 301 void ExpectSessionMessages( |
302 const mojo::Array<blink::mojom::SessionMessagePtr>& expected_msgs, | 302 const mojo::Array<blink::mojom::SessionMessagePtr>& expected_msgs, |
303 const mojo::Array<blink::mojom::SessionMessagePtr>& actual_msgs) { | 303 const mojo::Array<blink::mojom::SessionMessagePtr>& actual_msgs) { |
304 EXPECT_EQ(expected_msgs.size(), actual_msgs.size()); | 304 EXPECT_EQ(expected_msgs.size(), actual_msgs.size()); |
305 for (size_t i = 0; i < actual_msgs.size(); ++i) { | 305 for (size_t i = 0; i < actual_msgs.size(); ++i) { |
306 EXPECT_TRUE(ArePresentationSessionMessagesEqual(expected_msgs[i].get(), | 306 EXPECT_TRUE(ArePresentationSessionMessagesEqual(expected_msgs[i].get(), |
307 actual_msgs[i].get())); | 307 actual_msgs[i].get())); |
308 } | 308 } |
309 } | 309 } |
310 | 310 |
311 void ExpectSendSessionMessageCallback(bool success) { | 311 void ExpectSendMessageMojoCallback(bool success) { |
312 EXPECT_TRUE(success); | 312 EXPECT_TRUE(success); |
313 EXPECT_FALSE(service_impl_->send_message_callback_); | 313 EXPECT_FALSE(service_impl_->send_message_callback_); |
314 if (!run_loop_quit_closure_.is_null()) | 314 if (!run_loop_quit_closure_.is_null()) |
315 run_loop_quit_closure_.Run(); | 315 run_loop_quit_closure_.Run(); |
316 } | 316 } |
317 | 317 |
318 void RunListenForSessionMessages(const std::string& text_msg, | 318 void RunListenForSessionMessages(const std::string& text_msg, |
319 const std::vector<uint8_t>& binary_data, | 319 const std::vector<uint8_t>& binary_data, |
320 bool pass_ownership) { | 320 bool pass_ownership) { |
321 mojo::Array<blink::mojom::SessionMessagePtr> expected_msgs(2); | 321 mojo::Array<blink::mojom::SessionMessagePtr> expected_msgs(2); |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
538 // Same URL as before; no-ops. | 538 // Same URL as before; no-ops. |
539 service_impl_->SetDefaultPresentationURL(kPresentationUrl); | 539 service_impl_->SetDefaultPresentationURL(kPresentationUrl); |
540 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&mock_delegate_)); | 540 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&mock_delegate_)); |
541 EXPECT_EQ(kPresentationUrl, service_impl_->default_presentation_url_); | 541 EXPECT_EQ(kPresentationUrl, service_impl_->default_presentation_url_); |
542 } | 542 } |
543 | 543 |
544 TEST_F(PresentationServiceImplTest, StartSessionSuccess) { | 544 TEST_F(PresentationServiceImplTest, StartSessionSuccess) { |
545 service_ptr_->StartSession( | 545 service_ptr_->StartSession( |
546 kPresentationUrl, | 546 kPresentationUrl, |
547 base::Bind( | 547 base::Bind( |
548 &PresentationServiceImplTest::ExpectNewSessionCallbackSuccess, | 548 &PresentationServiceImplTest::ExpectNewSessionMojoCallbackSuccess, |
549 base::Unretained(this))); | 549 base::Unretained(this))); |
550 base::RunLoop run_loop; | 550 base::RunLoop run_loop; |
551 base::Callback<void(const PresentationSessionInfo&)> success_cb; | 551 base::Callback<void(const PresentationSessionInfo&)> success_cb; |
552 EXPECT_CALL(mock_delegate_, StartSession(_, _, Eq(kPresentationUrl), _, _)) | 552 EXPECT_CALL(mock_delegate_, StartSession(_, _, Eq(kPresentationUrl), _, _)) |
553 .WillOnce(DoAll( | 553 .WillOnce(DoAll( |
554 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 554 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
555 SaveArg<3>(&success_cb))); | 555 SaveArg<3>(&success_cb))); |
556 run_loop.Run(); | 556 run_loop.Run(); |
557 | 557 |
558 EXPECT_CALL(mock_delegate_, ListenForConnectionStateChange(_, _, _, _)) | 558 EXPECT_CALL(mock_delegate_, ListenForConnectionStateChange(_, _, _, _)) |
559 .Times(1); | 559 .Times(1); |
560 success_cb.Run(PresentationSessionInfo(kPresentationUrl, kPresentationId)); | 560 success_cb.Run(PresentationSessionInfo(kPresentationUrl, kPresentationId)); |
561 SaveQuitClosureAndRunLoop(); | 561 SaveQuitClosureAndRunLoop(); |
562 } | 562 } |
563 | 563 |
564 TEST_F(PresentationServiceImplTest, StartSessionError) { | 564 TEST_F(PresentationServiceImplTest, StartSessionError) { |
565 service_ptr_->StartSession( | 565 service_ptr_->StartSession( |
566 kPresentationUrl, | 566 kPresentationUrl, |
567 base::Bind( | 567 base::Bind( |
568 &PresentationServiceImplTest::ExpectNewSessionCallbackError, | 568 &PresentationServiceImplTest::ExpectNewSessionMojoCallbackError, |
569 base::Unretained(this))); | 569 base::Unretained(this))); |
570 base::RunLoop run_loop; | 570 base::RunLoop run_loop; |
571 base::Callback<void(const PresentationError&)> error_cb; | 571 base::Callback<void(const PresentationError&)> error_cb; |
572 EXPECT_CALL(mock_delegate_, StartSession(_, _, Eq(kPresentationUrl), _, _)) | 572 EXPECT_CALL(mock_delegate_, StartSession(_, _, Eq(kPresentationUrl), _, _)) |
573 .WillOnce(DoAll( | 573 .WillOnce(DoAll( |
574 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 574 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
575 SaveArg<4>(&error_cb))); | 575 SaveArg<4>(&error_cb))); |
576 run_loop.Run(); | 576 run_loop.Run(); |
577 error_cb.Run(PresentationError(PRESENTATION_ERROR_UNKNOWN, "Error message")); | 577 error_cb.Run(PresentationError(PRESENTATION_ERROR_UNKNOWN, "Error message")); |
578 SaveQuitClosureAndRunLoop(); | 578 SaveQuitClosureAndRunLoop(); |
579 } | 579 } |
580 | 580 |
581 TEST_F(PresentationServiceImplTest, JoinSessionSuccess) { | 581 TEST_F(PresentationServiceImplTest, JoinSessionSuccess) { |
582 service_ptr_->JoinSession( | 582 service_ptr_->JoinSession( |
583 kPresentationUrl, | 583 kPresentationUrl, |
584 kPresentationId, | 584 kPresentationId, |
585 base::Bind( | 585 base::Bind( |
586 &PresentationServiceImplTest::ExpectNewSessionCallbackSuccess, | 586 &PresentationServiceImplTest::ExpectNewSessionMojoCallbackSuccess, |
587 base::Unretained(this))); | 587 base::Unretained(this))); |
588 base::RunLoop run_loop; | 588 base::RunLoop run_loop; |
589 base::Callback<void(const PresentationSessionInfo&)> success_cb; | 589 base::Callback<void(const PresentationSessionInfo&)> success_cb; |
590 EXPECT_CALL(mock_delegate_, JoinSession( | 590 EXPECT_CALL(mock_delegate_, JoinSession( |
591 _, _, Eq(kPresentationUrl), Eq(kPresentationId), _, _)) | 591 _, _, Eq(kPresentationUrl), Eq(kPresentationId), _, _)) |
592 .WillOnce(DoAll( | 592 .WillOnce(DoAll( |
593 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 593 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
594 SaveArg<4>(&success_cb))); | 594 SaveArg<4>(&success_cb))); |
595 run_loop.Run(); | 595 run_loop.Run(); |
596 | 596 |
597 EXPECT_CALL(mock_delegate_, ListenForConnectionStateChange(_, _, _, _)) | 597 EXPECT_CALL(mock_delegate_, ListenForConnectionStateChange(_, _, _, _)) |
598 .Times(1); | 598 .Times(1); |
599 success_cb.Run(PresentationSessionInfo(kPresentationUrl, kPresentationId)); | 599 success_cb.Run(PresentationSessionInfo(kPresentationUrl, kPresentationId)); |
600 SaveQuitClosureAndRunLoop(); | 600 SaveQuitClosureAndRunLoop(); |
601 } | 601 } |
602 | 602 |
603 TEST_F(PresentationServiceImplTest, JoinSessionError) { | 603 TEST_F(PresentationServiceImplTest, JoinSessionError) { |
604 service_ptr_->JoinSession( | 604 service_ptr_->JoinSession( |
605 kPresentationUrl, | 605 kPresentationUrl, |
606 kPresentationId, | 606 kPresentationId, |
607 base::Bind( | 607 base::Bind( |
608 &PresentationServiceImplTest::ExpectNewSessionCallbackError, | 608 &PresentationServiceImplTest::ExpectNewSessionMojoCallbackError, |
609 base::Unretained(this))); | 609 base::Unretained(this))); |
610 base::RunLoop run_loop; | 610 base::RunLoop run_loop; |
611 base::Callback<void(const PresentationError&)> error_cb; | 611 base::Callback<void(const PresentationError&)> error_cb; |
612 EXPECT_CALL(mock_delegate_, JoinSession( | 612 EXPECT_CALL(mock_delegate_, JoinSession( |
613 _, _, Eq(kPresentationUrl), Eq(kPresentationId), _, _)) | 613 _, _, Eq(kPresentationUrl), Eq(kPresentationId), _, _)) |
614 .WillOnce(DoAll( | 614 .WillOnce(DoAll( |
615 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 615 InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
616 SaveArg<5>(&error_cb))); | 616 SaveArg<5>(&error_cb))); |
617 run_loop.Run(); | 617 run_loop.Run(); |
618 error_cb.Run(PresentationError(PRESENTATION_ERROR_UNKNOWN, "Error message")); | 618 error_cb.Run(PresentationError(PRESENTATION_ERROR_UNKNOWN, "Error message")); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
659 EXPECT_CALL(mock_delegate_, StartSession(_, _, Eq(presentation_url1), _, _)) | 659 EXPECT_CALL(mock_delegate_, StartSession(_, _, Eq(presentation_url1), _, _)) |
660 .Times(1); | 660 .Times(1); |
661 service_ptr_->StartSession(presentation_url1, | 661 service_ptr_->StartSession(presentation_url1, |
662 base::Bind(&DoNothing)); | 662 base::Bind(&DoNothing)); |
663 | 663 |
664 // This request should fail immediately, since there is already a StartSession | 664 // This request should fail immediately, since there is already a StartSession |
665 // in progress. | 665 // in progress. |
666 service_ptr_->StartSession( | 666 service_ptr_->StartSession( |
667 presentation_url2, | 667 presentation_url2, |
668 base::Bind( | 668 base::Bind( |
669 &PresentationServiceImplTest::ExpectNewSessionCallbackError, | 669 &PresentationServiceImplTest::ExpectNewSessionMojoCallbackError, |
670 base::Unretained(this))); | 670 base::Unretained(this))); |
671 SaveQuitClosureAndRunLoop(); | 671 SaveQuitClosureAndRunLoop(); |
672 } | 672 } |
673 | 673 |
674 TEST_F(PresentationServiceImplTest, SendStringMessage) { | 674 TEST_F(PresentationServiceImplTest, SendStringMessage) { |
675 std::string message("Test presentation session message"); | 675 std::string message("Test presentation session message"); |
676 | 676 |
677 blink::mojom::PresentationSessionInfoPtr session( | 677 blink::mojom::PresentationSessionInfoPtr session( |
678 blink::mojom::PresentationSessionInfo::New()); | 678 blink::mojom::PresentationSessionInfo::New()); |
679 session->url = kPresentationUrl; | 679 session->url = kPresentationUrl; |
680 session->id = kPresentationId; | 680 session->id = kPresentationId; |
681 blink::mojom::SessionMessagePtr message_request( | 681 blink::mojom::SessionMessagePtr message_request( |
682 blink::mojom::SessionMessage::New()); | 682 blink::mojom::SessionMessage::New()); |
683 message_request->type = blink::mojom::PresentationMessageType::TEXT; | 683 message_request->type = blink::mojom::PresentationMessageType::TEXT; |
684 message_request->message = message; | 684 message_request->message = message; |
685 service_ptr_->SendSessionMessage( | 685 service_ptr_->SendSessionMessage( |
686 std::move(session), std::move(message_request), | 686 std::move(session), std::move(message_request), |
687 base::Bind(&PresentationServiceImplTest::ExpectSendSessionMessageCallback, | 687 base::Bind(&PresentationServiceImplTest::ExpectSendMessageMojoCallback, |
688 base::Unretained(this))); | 688 base::Unretained(this))); |
689 | 689 |
690 base::RunLoop run_loop; | 690 base::RunLoop run_loop; |
691 base::Callback<void(bool)> send_message_cb; | 691 base::Callback<void(bool)> send_message_cb; |
692 PresentationSessionMessage* test_message = nullptr; | 692 PresentationSessionMessage* test_message = nullptr; |
693 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) | 693 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) |
694 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 694 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
695 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); | 695 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); |
696 run_loop.Run(); | 696 run_loop.Run(); |
697 | 697 |
(...skipping 17 matching lines...) Expand all Loading... |
715 blink::mojom::PresentationSessionInfoPtr session( | 715 blink::mojom::PresentationSessionInfoPtr session( |
716 blink::mojom::PresentationSessionInfo::New()); | 716 blink::mojom::PresentationSessionInfo::New()); |
717 session->url = kPresentationUrl; | 717 session->url = kPresentationUrl; |
718 session->id = kPresentationId; | 718 session->id = kPresentationId; |
719 blink::mojom::SessionMessagePtr message_request( | 719 blink::mojom::SessionMessagePtr message_request( |
720 blink::mojom::SessionMessage::New()); | 720 blink::mojom::SessionMessage::New()); |
721 message_request->type = blink::mojom::PresentationMessageType::ARRAY_BUFFER; | 721 message_request->type = blink::mojom::PresentationMessageType::ARRAY_BUFFER; |
722 message_request->data = mojo::Array<uint8_t>::From(data); | 722 message_request->data = mojo::Array<uint8_t>::From(data); |
723 service_ptr_->SendSessionMessage( | 723 service_ptr_->SendSessionMessage( |
724 std::move(session), std::move(message_request), | 724 std::move(session), std::move(message_request), |
725 base::Bind(&PresentationServiceImplTest::ExpectSendSessionMessageCallback, | 725 base::Bind(&PresentationServiceImplTest::ExpectSendMessageMojoCallback, |
726 base::Unretained(this))); | 726 base::Unretained(this))); |
727 | 727 |
728 base::RunLoop run_loop; | 728 base::RunLoop run_loop; |
729 base::Callback<void(bool)> send_message_cb; | 729 base::Callback<void(bool)> send_message_cb; |
730 PresentationSessionMessage* test_message = nullptr; | 730 PresentationSessionMessage* test_message = nullptr; |
731 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) | 731 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) |
732 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 732 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
733 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); | 733 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); |
734 run_loop.Run(); | 734 run_loop.Run(); |
735 | 735 |
(...skipping 23 matching lines...) Expand all Loading... |
759 blink::mojom::PresentationSessionInfoPtr session( | 759 blink::mojom::PresentationSessionInfoPtr session( |
760 blink::mojom::PresentationSessionInfo::New()); | 760 blink::mojom::PresentationSessionInfo::New()); |
761 session->url = kPresentationUrl; | 761 session->url = kPresentationUrl; |
762 session->id = kPresentationId; | 762 session->id = kPresentationId; |
763 blink::mojom::SessionMessagePtr message_request( | 763 blink::mojom::SessionMessagePtr message_request( |
764 blink::mojom::SessionMessage::New()); | 764 blink::mojom::SessionMessage::New()); |
765 message_request->type = blink::mojom::PresentationMessageType::ARRAY_BUFFER; | 765 message_request->type = blink::mojom::PresentationMessageType::ARRAY_BUFFER; |
766 message_request->data = mojo::Array<uint8_t>::From(data); | 766 message_request->data = mojo::Array<uint8_t>::From(data); |
767 service_ptr_->SendSessionMessage( | 767 service_ptr_->SendSessionMessage( |
768 std::move(session), std::move(message_request), | 768 std::move(session), std::move(message_request), |
769 base::Bind(&PresentationServiceImplTest::ExpectSendSessionMessageCallback, | 769 base::Bind(&PresentationServiceImplTest::ExpectSendMessageMojoCallback, |
770 base::Unretained(this))); | 770 base::Unretained(this))); |
771 | 771 |
772 base::RunLoop run_loop; | 772 base::RunLoop run_loop; |
773 base::Callback<void(bool)> send_message_cb; | 773 base::Callback<void(bool)> send_message_cb; |
774 PresentationSessionMessage* test_message = nullptr; | 774 PresentationSessionMessage* test_message = nullptr; |
775 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) | 775 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) |
776 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 776 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
777 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); | 777 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); |
778 run_loop.Run(); | 778 run_loop.Run(); |
779 | 779 |
(...skipping 10 matching lines...) Expand all Loading... |
790 blink::mojom::PresentationSessionInfoPtr session( | 790 blink::mojom::PresentationSessionInfoPtr session( |
791 blink::mojom::PresentationSessionInfo::New()); | 791 blink::mojom::PresentationSessionInfo::New()); |
792 session->url = kPresentationUrl; | 792 session->url = kPresentationUrl; |
793 session->id = kPresentationId; | 793 session->id = kPresentationId; |
794 blink::mojom::SessionMessagePtr message_request( | 794 blink::mojom::SessionMessagePtr message_request( |
795 blink::mojom::SessionMessage::New()); | 795 blink::mojom::SessionMessage::New()); |
796 message_request->type = blink::mojom::PresentationMessageType::BLOB; | 796 message_request->type = blink::mojom::PresentationMessageType::BLOB; |
797 message_request->data = mojo::Array<uint8_t>::From(data); | 797 message_request->data = mojo::Array<uint8_t>::From(data); |
798 service_ptr_->SendSessionMessage( | 798 service_ptr_->SendSessionMessage( |
799 std::move(session), std::move(message_request), | 799 std::move(session), std::move(message_request), |
800 base::Bind(&PresentationServiceImplTest::ExpectSendSessionMessageCallback, | 800 base::Bind(&PresentationServiceImplTest::ExpectSendMessageMojoCallback, |
801 base::Unretained(this))); | 801 base::Unretained(this))); |
802 | 802 |
803 base::RunLoop run_loop; | 803 base::RunLoop run_loop; |
804 base::Callback<void(bool)> send_message_cb; | 804 base::Callback<void(bool)> send_message_cb; |
805 PresentationSessionMessage* test_message = nullptr; | 805 PresentationSessionMessage* test_message = nullptr; |
806 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) | 806 EXPECT_CALL(mock_delegate_, SendMessageRawPtr(_, _, _, _, _)) |
807 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), | 807 .WillOnce(DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), |
808 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); | 808 SaveArg<3>(&test_message), SaveArg<4>(&send_message_cb))); |
809 run_loop.Run(); | 809 run_loop.Run(); |
810 | 810 |
(...skipping 23 matching lines...) Expand all Loading... |
834 base::StringPrintf(presentation_url, i), | 834 base::StringPrintf(presentation_url, i), |
835 base::StringPrintf(presentation_id, i), | 835 base::StringPrintf(presentation_id, i), |
836 base::Bind(&DoNothing)); | 836 base::Bind(&DoNothing)); |
837 } | 837 } |
838 | 838 |
839 // Exceeded maximum queue size, should invoke mojo callback with error. | 839 // Exceeded maximum queue size, should invoke mojo callback with error. |
840 service_ptr_->JoinSession( | 840 service_ptr_->JoinSession( |
841 base::StringPrintf(presentation_url, i), | 841 base::StringPrintf(presentation_url, i), |
842 base::StringPrintf(presentation_id, i), | 842 base::StringPrintf(presentation_id, i), |
843 base::Bind( | 843 base::Bind( |
844 &PresentationServiceImplTest::ExpectNewSessionCallbackError, | 844 &PresentationServiceImplTest::ExpectNewSessionMojoCallbackError, |
845 base::Unretained(this))); | 845 base::Unretained(this))); |
846 SaveQuitClosureAndRunLoop(); | 846 SaveQuitClosureAndRunLoop(); |
847 } | 847 } |
848 | 848 |
849 TEST_F(PresentationServiceImplTest, ScreenAvailabilityNotSupported) { | 849 TEST_F(PresentationServiceImplTest, ScreenAvailabilityNotSupported) { |
850 mock_delegate_.set_screen_availability_listening_supported(false); | 850 mock_delegate_.set_screen_availability_listening_supported(false); |
851 base::RunLoop run_loop; | 851 base::RunLoop run_loop; |
852 EXPECT_CALL(mock_client_, | 852 EXPECT_CALL(mock_client_, |
853 OnScreenAvailabilityNotSupported(Eq(kPresentationUrl))) | 853 OnScreenAvailabilityNotSupported(Eq(kPresentationUrl))) |
854 .WillOnce(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit)); | 854 .WillOnce(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit)); |
855 ListenForScreenAvailabilityAndWait(kPresentationUrl, false); | 855 ListenForScreenAvailabilityAndWait(kPresentationUrl, false); |
856 run_loop.Run(); | 856 run_loop.Run(); |
857 } | 857 } |
858 | 858 |
859 } // namespace content | 859 } // namespace content |
OLD | NEW |