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

Unified Diff: chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc

Issue 2471573005: [Presentation API] (5th) (1-UA) integrate controller and receiver side for 1-UA messaging (Closed)
Patch Set: resolve code review comments from Mark Created 3 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc
diff --git a/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc b/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc
index d4543441792de518df4871e07f4a0209dce89d5a..d07416053420df1d416d4a8f8aa31feab77179c1 100644
--- a/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc
+++ b/chrome/browser/media/router/presentation_service_delegate_impl_unittest.cc
@@ -102,6 +102,12 @@ std::unique_ptr<KeyedService> BuildMockOffscreenPresentationManager(
return base::MakeUnique<MockOffscreenPresentationManager>();
}
+class MockPresentationSessionStartedCallback {
+ public:
+ MOCK_METHOD1(OnPresentationSessionStartedCallback,
+ void(const content::PresentationSessionInfo&));
+};
+
class PresentationServiceDelegateImplTest
: public ChromeRenderViewHostTestHarness {
public:
@@ -485,7 +491,7 @@ TEST_F(PresentationServiceDelegateImplTest, SinksObserverCantRegister) {
main_frame_process_id_, main_frame_routing_id_, &listener1_));
}
-TEST_F(PresentationServiceDelegateImplTest, ConnectToOffscreenPresentation) {
+TEST_F(PresentationServiceDelegateImplTest, ConnectToPresentation) {
content::RenderFrameHost* main_frame = GetWebContents()->GetMainFrame();
ASSERT_TRUE(main_frame);
int render_process_id = main_frame->GetProcess()->GetID();
@@ -495,6 +501,19 @@ TEST_F(PresentationServiceDelegateImplTest, ConnectToOffscreenPresentation) {
content::PresentationSessionInfo session_info(presentation_url,
presentation_id);
+ MockPresentationSessionStartedCallback mock_callback;
+ EXPECT_CALL(mock_callback, OnPresentationSessionStartedCallback(_));
+ MediaRoute media_route(
+ "route_id", MediaSourceForPresentationUrl(session_info.presentation_url),
+ "mediaSinkId", "", true, "", true);
+ media_route.set_offscreen_presentation(true);
+ delegate_impl_->OnStartSessionSucceeded(
+ render_process_id, render_frame_id,
+ base::Bind(&MockPresentationSessionStartedCallback::
+ OnPresentationSessionStartedCallback,
+ base::Unretained(&mock_callback)),
+ session_info, media_route);
+
OffscreenPresentationManagerFactory::GetInstanceForTest()->SetTestingFactory(
profile(), &BuildMockOffscreenPresentationManager);
MockOffscreenPresentationManager* mock_offscreen_manager =
@@ -508,9 +527,16 @@ TEST_F(PresentationServiceDelegateImplTest, ConnectToOffscreenPresentation) {
content::PresentationConnectionPtr connection_ptr;
content::PresentationConnectionRequest connection_request;
- delegate_impl_->ConnectToOffscreenPresentation(
- render_process_id, render_frame_id, session_info,
- std::move(connection_ptr), std::move(connection_request));
+ delegate_impl_->ConnectToPresentation(render_process_id, render_frame_id,
+ session_info, std::move(connection_ptr),
+ std::move(connection_request));
+
+ EXPECT_CALL(*mock_offscreen_manager,
+ UnregisterOffscreenPresentationController(
+ presentation_id,
+ RenderFrameHostId(render_process_id, render_frame_id)));
+ EXPECT_CALL(router_, DetachRoute("route_id"));
+ delegate_impl_->Reset(render_process_id, render_frame_id);
}
#if !defined(OS_ANDROID)

Powered by Google App Engine
This is Rietveld 408576698