| 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 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 PresentationRequest request = | 144 PresentationRequest request = |
| 145 delegate_impl_->GetDefaultPresentationRequest(); | 145 delegate_impl_->GetDefaultPresentationRequest(); |
| 146 | 146 |
| 147 // Should not trigger callback since route response is error. | 147 // Should not trigger callback since route response is error. |
| 148 std::unique_ptr<RouteRequestResult> result = RouteRequestResult::FromError( | 148 std::unique_ptr<RouteRequestResult> result = RouteRequestResult::FromError( |
| 149 "Error", RouteRequestResult::UNKNOWN_ERROR); | 149 "Error", RouteRequestResult::UNKNOWN_ERROR); |
| 150 delegate_impl_->OnRouteResponse(request, *result); | 150 delegate_impl_->OnRouteResponse(request, *result); |
| 151 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); | 151 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); |
| 152 | 152 |
| 153 // Should not trigger callback since request doesn't match. | 153 // Should not trigger callback since request doesn't match. |
| 154 PresentationRequest different_request(RenderFrameHostId(100, 200), | 154 PresentationRequest different_request( |
| 155 {presentation_url2_}, | 155 RenderFrameHostId(100, 200), {presentation_url2_}, GURL(kFrameUrl)); |
| 156 url::Origin(GURL(kFrameUrl))); | |
| 157 MediaRoute* media_route = new MediaRoute("differentRouteId", source2_, | 156 MediaRoute* media_route = new MediaRoute("differentRouteId", source2_, |
| 158 "mediaSinkId", "", true, "", true); | 157 "mediaSinkId", "", true, "", true); |
| 159 media_route->set_incognito(incognito); | 158 media_route->set_incognito(incognito); |
| 160 result = RouteRequestResult::FromSuccess(base::WrapUnique(media_route), | 159 result = RouteRequestResult::FromSuccess(base::WrapUnique(media_route), |
| 161 "differentPresentationId"); | 160 "differentPresentationId"); |
| 162 delegate_impl_->OnRouteResponse(different_request, *result); | 161 delegate_impl_->OnRouteResponse(different_request, *result); |
| 163 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); | 162 EXPECT_TRUE(Mock::VerifyAndClearExpectations(this)); |
| 164 | 163 |
| 165 // Should trigger callback since request matches. | 164 // Should trigger callback since request matches. |
| 166 EXPECT_CALL(*this, OnDefaultPresentationStarted(_)).Times(1); | 165 EXPECT_CALL(*this, OnDefaultPresentationStarted(_)).Times(1); |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 315 base::Unretained(this)); | 314 base::Unretained(this)); |
| 316 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, | 315 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, |
| 317 main_frame_routing_id_, | 316 main_frame_routing_id_, |
| 318 presentation_urls_, callback); | 317 presentation_urls_, callback); |
| 319 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 318 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 320 PresentationRequest request1 = | 319 PresentationRequest request1 = |
| 321 delegate_impl_->GetDefaultPresentationRequest(); | 320 delegate_impl_->GetDefaultPresentationRequest(); |
| 322 EXPECT_EQ(presentation_url1_, request1.presentation_urls()[0]); | 321 EXPECT_EQ(presentation_url1_, request1.presentation_urls()[0]); |
| 323 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 322 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 324 request1.render_frame_host_id()); | 323 request1.render_frame_host_id()); |
| 325 EXPECT_EQ(url::Origin(frame_url), request1.frame_origin()); | 324 EXPECT_EQ(frame_url, request1.frame_url()); |
| 326 | 325 |
| 327 // Set to a new default presentation URL | 326 // Set to a new default presentation URL |
| 328 std::vector<GURL> new_urls = {presentation_url2_}; | 327 std::vector<GURL> new_urls = {presentation_url2_}; |
| 329 delegate_impl_->SetDefaultPresentationUrls( | 328 delegate_impl_->SetDefaultPresentationUrls( |
| 330 main_frame_process_id_, main_frame_routing_id_, new_urls, callback); | 329 main_frame_process_id_, main_frame_routing_id_, new_urls, callback); |
| 331 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 330 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 332 PresentationRequest request2 = | 331 PresentationRequest request2 = |
| 333 delegate_impl_->GetDefaultPresentationRequest(); | 332 delegate_impl_->GetDefaultPresentationRequest(); |
| 334 EXPECT_EQ(presentation_url2_, request2.presentation_urls()[0]); | 333 EXPECT_EQ(presentation_url2_, request2.presentation_urls()[0]); |
| 335 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 334 EXPECT_EQ(RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 336 request2.render_frame_host_id()); | 335 request2.render_frame_host_id()); |
| 337 EXPECT_EQ(url::Origin(frame_url), request2.frame_origin()); | 336 EXPECT_EQ(frame_url, request2.frame_url()); |
| 338 | 337 |
| 339 // Remove default presentation URL. | 338 // Remove default presentation URL. |
| 340 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, | 339 delegate_impl_->SetDefaultPresentationUrls(main_frame_process_id_, |
| 341 main_frame_routing_id_, | 340 main_frame_routing_id_, |
| 342 std::vector<GURL>(), callback); | 341 std::vector<GURL>(), callback); |
| 343 EXPECT_FALSE(delegate_impl_->HasDefaultPresentationRequest()); | 342 EXPECT_FALSE(delegate_impl_->HasDefaultPresentationRequest()); |
| 344 } | 343 } |
| 345 | 344 |
| 346 TEST_F(PresentationServiceDelegateImplTest, DefaultPresentationUrlCallback) { | 345 TEST_F(PresentationServiceDelegateImplTest, DefaultPresentationUrlCallback) { |
| 347 RunDefaultPresentationUrlCallbackTest(false); | 346 RunDefaultPresentationUrlCallbackTest(false); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 361 StrictMock<MockDefaultPresentationRequestObserver> observer; | 360 StrictMock<MockDefaultPresentationRequestObserver> observer; |
| 362 delegate_impl_->AddDefaultPresentationRequestObserver(&observer); | 361 delegate_impl_->AddDefaultPresentationRequestObserver(&observer); |
| 363 | 362 |
| 364 GURL frame_url(kFrameUrl); | 363 GURL frame_url(kFrameUrl); |
| 365 content::WebContentsTester::For(GetWebContents()) | 364 content::WebContentsTester::For(GetWebContents()) |
| 366 ->NavigateAndCommit(frame_url); | 365 ->NavigateAndCommit(frame_url); |
| 367 | 366 |
| 368 std::vector<GURL> request1_urls = {presentation_url1_}; | 367 std::vector<GURL> request1_urls = {presentation_url1_}; |
| 369 PresentationRequest observed_request1( | 368 PresentationRequest observed_request1( |
| 370 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 369 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 371 request1_urls, url::Origin(frame_url)); | 370 request1_urls, frame_url); |
| 372 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request1))) | 371 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request1))) |
| 373 .Times(1); | 372 .Times(1); |
| 374 delegate_impl_->SetDefaultPresentationUrls( | 373 delegate_impl_->SetDefaultPresentationUrls( |
| 375 main_frame_process_id_, main_frame_routing_id_, request1_urls, callback); | 374 main_frame_process_id_, main_frame_routing_id_, request1_urls, callback); |
| 376 | 375 |
| 377 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 376 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 378 PresentationRequest request1 = | 377 PresentationRequest request1 = |
| 379 delegate_impl_->GetDefaultPresentationRequest(); | 378 delegate_impl_->GetDefaultPresentationRequest(); |
| 380 EXPECT_TRUE(request1.Equals(observed_request1)); | 379 EXPECT_TRUE(request1.Equals(observed_request1)); |
| 381 | 380 |
| 382 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); | 381 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); |
| 383 | 382 |
| 384 std::vector<GURL> request2_urls = {presentation_url2_}; | 383 std::vector<GURL> request2_urls = {presentation_url2_}; |
| 385 PresentationRequest observed_request2( | 384 PresentationRequest observed_request2( |
| 386 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), | 385 RenderFrameHostId(main_frame_process_id_, main_frame_routing_id_), |
| 387 request2_urls, url::Origin(frame_url)); | 386 request2_urls, frame_url); |
| 388 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request2))) | 387 EXPECT_CALL(observer, OnDefaultPresentationChanged(Equals(observed_request2))) |
| 389 .Times(1); | 388 .Times(1); |
| 390 delegate_impl_->SetDefaultPresentationUrls( | 389 delegate_impl_->SetDefaultPresentationUrls( |
| 391 main_frame_process_id_, main_frame_routing_id_, request2_urls, callback); | 390 main_frame_process_id_, main_frame_routing_id_, request2_urls, callback); |
| 392 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); | 391 ASSERT_TRUE(delegate_impl_->HasDefaultPresentationRequest()); |
| 393 PresentationRequest request2 = | 392 PresentationRequest request2 = |
| 394 delegate_impl_->GetDefaultPresentationRequest(); | 393 delegate_impl_->GetDefaultPresentationRequest(); |
| 395 EXPECT_TRUE(request2.Equals(observed_request2)); | 394 EXPECT_TRUE(request2.Equals(observed_request2)); |
| 396 | 395 |
| 397 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); | 396 EXPECT_TRUE(Mock::VerifyAndClearExpectations(&observer)); |
| (...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 617 base::Bind(&MockCreatePresentationConnnectionCallbacks:: | 616 base::Bind(&MockCreatePresentationConnnectionCallbacks:: |
| 618 OnCreateConnectionSuccess, | 617 OnCreateConnectionSuccess, |
| 619 base::Unretained(&mock_create_connection_callbacks)), | 618 base::Unretained(&mock_create_connection_callbacks)), |
| 620 base::Bind( | 619 base::Bind( |
| 621 &MockCreatePresentationConnnectionCallbacks::OnCreateConnectionError, | 620 &MockCreatePresentationConnnectionCallbacks::OnCreateConnectionError, |
| 622 base::Unretained(&mock_create_connection_callbacks))); | 621 base::Unretained(&mock_create_connection_callbacks))); |
| 623 } | 622 } |
| 624 #endif // !defined(OS_ANDROID) | 623 #endif // !defined(OS_ANDROID) |
| 625 | 624 |
| 626 } // namespace media_router | 625 } // namespace media_router |
| OLD | NEW |