| 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 "chrome/browser/media/router/presentation_service_delegate_impl.h" | 5 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" |
| 6 | 6 |
| 7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
| 8 #include "chrome/browser/media/router/media_source.h" | 8 #include "chrome/browser/media/router/media_source.h" |
| 9 #include "chrome/browser/media/router/media_source_helper.h" | 9 #include "chrome/browser/media/router/media_source_helper.h" |
| 10 #include "chrome/browser/media/router/mock_media_router.h" | 10 #include "chrome/browser/media/router/mock_media_router.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 PresentationRequest request = | 108 PresentationRequest request = |
| 109 delegate_impl_->GetDefaultPresentationRequest(); | 109 delegate_impl_->GetDefaultPresentationRequest(); |
| 110 | 110 |
| 111 // Should not trigger callback since route response is error. | 111 // Should not trigger callback since route response is error. |
| 112 std::unique_ptr<RouteRequestResult> result = RouteRequestResult::FromError( | 112 std::unique_ptr<RouteRequestResult> result = RouteRequestResult::FromError( |
| 113 "Error", RouteRequestResult::UNKNOWN_ERROR); | 113 "Error", RouteRequestResult::UNKNOWN_ERROR); |
| 114 delegate_impl_->OnRouteResponse(request, *result); | 114 delegate_impl_->OnRouteResponse(request, *result); |
| 115 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); | 115 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); |
| 116 | 116 |
| 117 // Should not trigger callback since request doesn't match. | 117 // Should not trigger callback since request doesn't match. |
| 118 PresentationRequest different_request( | 118 PresentationRequest different_request(RenderFrameHostId(100, 200), |
| 119 RenderFrameHostId(100, 200), {presentation_url2_}, GURL(kFrameUrl)); | 119 {presentation_url2_}, |
| 120 url::Origin(GURL(kFrameUrl))); |
| 120 MediaRoute* media_route = new MediaRoute("differentRouteId", source2_, | 121 MediaRoute* media_route = new MediaRoute("differentRouteId", source2_, |
| 121 "mediaSinkId", "", true, "", true); | 122 "mediaSinkId", "", true, "", true); |
| 122 media_route->set_incognito(incognito); | 123 media_route->set_incognito(incognito); |
| 123 result = RouteRequestResult::FromSuccess(base::WrapUnique(media_route), | 124 result = RouteRequestResult::FromSuccess(base::WrapUnique(media_route), |
| 124 "differentPresentationId"); | 125 "differentPresentationId"); |
| 125 delegate_impl_->OnRouteResponse(different_request, *result); | 126 delegate_impl_->OnRouteResponse(different_request, *result); |
| 126 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); | 127 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); |
| 127 | 128 |
| 128 // Should trigger callback since request matches. | 129 // Should trigger callback since request matches. |
| 129 EXPECT_CALL(*this, OnDefaultPresentationStarted(_)).Times(1); | 130 EXPECT_CALL(*this, OnDefaultPresentationStarted(_)).Times(1); |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 278 base::Unretained(this)); | 279 base::Unretained(this)); |
| 279 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, | 280 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, |
| 280 main_frame_routing_id_, | 281 main_frame_routing_id_, |
| 281 presentation_urls_, callback); | 282 presentation_urls_, callback); |
| 282 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 283 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 283 PresentationRequest request1 = | 284 PresentationRequest request1 = |
| 284 delegate_impl_->GetDefaultPresentationRequest(); | 285 delegate_impl_->GetDefaultPresentationRequest(); |
| 285 EXPECT_EQ(presentation_url1_, request1.presentation_urls()[0]); | 286 EXPECT_EQ(presentation_url1_, request1.presentation_urls()[0]); |
| 286 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 287 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 287 request1.render_frame_host_id()); | 288 request1.render_frame_host_id()); |
| 288 EXPECT_EQ(frame_url, request1.frame_url()); | 289 EXPECT_EQ(url::Origin(frame_url), request1.frame_origin()); |
| 289 | 290 |
| 290 // Set to a new default presentation URL | 291 // Set to a new default presentation URL |
| 291 std::vector<GURL> new_urls = {presentation_url2_}; | 292 std::vector<GURL> new_urls = {presentation_url2_}; |
| 292 delegate_impl_->SetDefaultPresentationUrls( | 293 delegate_impl_->SetDefaultPresentationUrls( |
| 293 main_frame_process_id_, main_frame_routing_id_, new_urls, callback); | 294 main_frame_process_id_, main_frame_routing_id_, new_urls, callback); |
| 294 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 295 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 295 PresentationRequest request2 = | 296 PresentationRequest request2 = |
| 296 delegate_impl_->GetDefaultPresentationRequest(); | 297 delegate_impl_->GetDefaultPresentationRequest(); |
| 297 EXPECT_EQ(presentation_url2_, request2.presentation_urls()[0]); | 298 EXPECT_EQ(presentation_url2_, request2.presentation_urls()[0]); |
| 298 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 299 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 299 request2.render_frame_host_id()); | 300 request2.render_frame_host_id()); |
| 300 EXPECT_EQ(frame_url, request2.frame_url()); | 301 EXPECT_EQ(url::Origin(frame_url), request2.frame_origin()); |
| 301 | 302 |
| 302 // Remove default presentation URL. | 303 // Remove default presentation URL. |
| 303 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, | 304 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, |
| 304 main_frame_routing_id_, | 305 main_frame_routing_id_, |
| 305 std::vector<GURL>(), callback); | 306 std::vector<GURL>(), callback); |
| 306 EXPECT_FALSE(delegate_impl_->HasDefaultPresentationRequest()); | 307 EXPECT_FALSE(delegate_impl_->HasDefaultPresentationRequest()); |
| 307 } | 308 } |
| 308 | 309 |
| 309 TEST_F(PresentationServiceDelegateImplTest, DefaultPresentationUrlCallback) { | 310 TEST_F(PresentationServiceDelegateImplTest, DefaultPresentationUrlCallback) { |
| 310 RunDefaultPresentationUrlCallbackTest(false); | 311 RunDefaultPresentationUrlCallbackTest(false); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 324 StrictMock<MockDefaultPresentationRequestObserver> observer; | 325 StrictMock<MockDefaultPresentationRequestObserver> observer; |
| 325 delegate_impl_->AddDefaultPresentationRequestObserver(&observer); | 326 delegate_impl_->AddDefaultPresentationRequestObserver(&observer); |
| 326 | 327 |
| 327 GURL frame_url(kFrameUrl); | 328 GURL frame_url(kFrameUrl); |
| 328 content::WebContentsTester::For(GetWebContents()) | 329 content::WebContentsTester::For(GetWebContents()) |
| 329 ->NavigateAndCommit(frame_url); | 330 ->NavigateAndCommit(frame_url); |
| 330 | 331 |
| 331 std::vector<GURL> request1_urls = {presentation_url1_}; | 332 std::vector<GURL> request1_urls = {presentation_url1_}; |
| 332 PresentationRequest observed_request1( | 333 PresentationRequest observed_request1( |
| 333 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 334 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 334 request1_urls, frame_url); | 335 request1_urls, url::Origin(frame_url)); |
| 335 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request1))) | 336 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request1))) |
| 336 .Times(1); | 337 .Times(1); |
| 337 delegate_impl_->SetDefaultPresentationUrls( | 338 delegate_impl_->SetDefaultPresentationUrls( |
| 338 main_frame_process_id_, main_frame_routing_id_, request1_urls, callback); | 339 main_frame_process_id_, main_frame_routing_id_, request1_urls, callback); |
| 339 | 340 |
| 340 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 341 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 341 PresentationRequest request1 = | 342 PresentationRequest request1 = |
| 342 delegate_impl_->GetDefaultPresentationRequest(); | 343 delegate_impl_->GetDefaultPresentationRequest(); |
| 343 EXPECT_TRUE(request1.Equals(observed_request1)); | 344 EXPECT_TRUE(request1.Equals(observed_request1)); |
| 344 | 345 |
| 345 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); | 346 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); |
| 346 | 347 |
| 347 std::vector<GURL> request2_urls = {presentation_url2_}; | 348 std::vector<GURL> request2_urls = {presentation_url2_}; |
| 348 PresentationRequest observed_request2( | 349 PresentationRequest observed_request2( |
| 349 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 350 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 350 request2_urls, frame_url); | 351 request2_urls, url::Origin(frame_url)); |
| 351 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request2))) | 352 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request2))) |
| 352 .Times(1); | 353 .Times(1); |
| 353 delegate_impl_->SetDefaultPresentationUrls( | 354 delegate_impl_->SetDefaultPresentationUrls( |
| 354 main_frame_process_id_, main_frame_routing_id_, request2_urls, callback); | 355 main_frame_process_id_, main_frame_routing_id_, request2_urls, callback); |
| 355 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 356 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 356 PresentationRequest request2 = | 357 PresentationRequest request2 = |
| 357 delegate_impl_->GetDefaultPresentationRequest(); | 358 delegate_impl_->GetDefaultPresentationRequest(); |
| 358 EXPECT_TRUE(request2.Equals(observed_request2)); | 359 EXPECT_TRUE(request2.Equals(observed_request2)); |
| 359 | 360 |
| 360 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); | 361 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); |
| (...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 552 base::Bind(&MockCreatePresentationConnnectionCallbacks:: | 553 base::Bind(&MockCreatePresentationConnnectionCallbacks:: |
| 553 OnCreateConnectionSuccess, | 554 OnCreateConnectionSuccess, |
| 554 base::Unretained(&mock_create_connection_callbacks)), | 555 base::Unretained(&mock_create_connection_callbacks)), |
| 555 base::Bind( | 556 base::Bind( |
| 556 &MockCreatePresentationConnnectionCallbacks::OnCreateConnectionError, | 557 &MockCreatePresentationConnnectionCallbacks::OnCreateConnectionError, |
| 557 base::Unretained(&mock_create_connection_callbacks))); | 558 base::Unretained(&mock_create_connection_callbacks))); |
| 558 } | 559 } |
| 559 #endif // !defined(OS_ANDROID) | 560 #endif // !defined(OS_ANDROID) |
| 560 | 561 |
| 561 } // namespace media_router | 562 } // namespace media_router |
| OLD | NEW |