| 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 "components/ntp_tiles/most_visited_sites.h" | 5 #include "components/ntp_tiles/most_visited_sites.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <ostream> | 10 #include <ostream> |
| (...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 430 MockIconCacher* icon_cacher_; | 430 MockIconCacher* icon_cacher_; |
| 431 }; | 431 }; |
| 432 | 432 |
| 433 TEST_P(MostVisitedSitesTest, ShouldStartNoCallInConstructor) { | 433 TEST_P(MostVisitedSitesTest, ShouldStartNoCallInConstructor) { |
| 434 // No call to mocks expected by the mere fact of instantiating | 434 // No call to mocks expected by the mere fact of instantiating |
| 435 // MostVisitedSites. | 435 // MostVisitedSites. |
| 436 base::RunLoop().RunUntilIdle(); | 436 base::RunLoop().RunUntilIdle(); |
| 437 } | 437 } |
| 438 | 438 |
| 439 TEST_P(MostVisitedSitesTest, ShouldIncludeTileForHomePage) { | 439 TEST_P(MostVisitedSitesTest, ShouldIncludeTileForHomePage) { |
| 440 base::test::ScopedFeatureList features; | |
| 441 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 442 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 440 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 443 home_page_client->SetHomePageEnabled(true); | 441 home_page_client->SetHomePageEnabled(true); |
| 444 DisableRemoteSuggestions(); | 442 DisableRemoteSuggestions(); |
| 445 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 443 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 446 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | 444 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); |
| 447 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 445 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 448 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 446 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 449 .Times(AnyNumber()) | 447 .Times(AnyNumber()) |
| 450 .WillRepeatedly(Return(false)); | 448 .WillRepeatedly(Return(false)); |
| 451 EXPECT_CALL(mock_observer_, OnMostVisitedURLsAvailable(FirstTileIs( | 449 EXPECT_CALL(mock_observer_, OnMostVisitedURLsAvailable(FirstTileIs( |
| 452 "", kHomePageUrl, TileSource::HOMEPAGE))); | 450 "", kHomePageUrl, TileSource::HOMEPAGE))); |
| 453 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 451 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 454 /*num_sites=*/3); | 452 /*num_sites=*/3); |
| 455 base::RunLoop().RunUntilIdle(); | 453 base::RunLoop().RunUntilIdle(); |
| 456 } | 454 } |
| 457 | 455 |
| 458 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageWithoutClient) { | 456 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageWithoutClient) { |
| 459 base::test::ScopedFeatureList features; | |
| 460 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 461 DisableRemoteSuggestions(); | 457 DisableRemoteSuggestions(); |
| 462 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 458 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 463 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | 459 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); |
| 464 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 460 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 465 EXPECT_CALL(mock_observer_, | 461 EXPECT_CALL(mock_observer_, |
| 466 OnMostVisitedURLsAvailable(Not(Contains( | 462 OnMostVisitedURLsAvailable(Not(Contains( |
| 467 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); | 463 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); |
| 468 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 464 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 469 /*num_sites=*/3); | 465 /*num_sites=*/3); |
| 470 base::RunLoop().RunUntilIdle(); | 466 base::RunLoop().RunUntilIdle(); |
| 471 } | 467 } |
| 472 | 468 |
| 473 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfFeatureDisabled) { | |
| 474 base::test::ScopedFeatureList features; | |
| 475 features.InitAndDisableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 476 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | |
| 477 home_page_client->SetHomePageEnabled(true); | |
| 478 DisableRemoteSuggestions(); | |
| 479 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | |
| 480 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | |
| 481 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | |
| 482 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | |
| 483 .Times(AnyNumber()) | |
| 484 .WillRepeatedly(Return(false)); | |
| 485 EXPECT_CALL(mock_observer_, | |
| 486 OnMostVisitedURLsAvailable(Not(Contains( | |
| 487 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); | |
| 488 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | |
| 489 /*num_sites=*/3); | |
| 490 base::RunLoop().RunUntilIdle(); | |
| 491 } | |
| 492 | |
| 493 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfNoTileRequested) { | 469 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfNoTileRequested) { |
| 494 base::test::ScopedFeatureList features; | |
| 495 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 496 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 470 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 497 home_page_client->SetHomePageEnabled(true); | 471 home_page_client->SetHomePageEnabled(true); |
| 498 DisableRemoteSuggestions(); | 472 DisableRemoteSuggestions(); |
| 499 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 473 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 500 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | 474 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); |
| 501 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 475 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 502 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 476 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 503 .Times(AnyNumber()) | 477 .Times(AnyNumber()) |
| 504 .WillRepeatedly(Return(false)); | 478 .WillRepeatedly(Return(false)); |
| 505 EXPECT_CALL(mock_observer_, OnMostVisitedURLsAvailable(IsEmpty())); | 479 EXPECT_CALL(mock_observer_, OnMostVisitedURLsAvailable(IsEmpty())); |
| 506 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 480 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 507 /*num_sites=*/0); | 481 /*num_sites=*/0); |
| 508 base::RunLoop().RunUntilIdle(); | 482 base::RunLoop().RunUntilIdle(); |
| 509 } | 483 } |
| 510 | 484 |
| 511 TEST_P(MostVisitedSitesTest, ShouldReturnOnlyHomePageIfOneTileRequested) { | 485 TEST_P(MostVisitedSitesTest, ShouldReturnOnlyHomePageIfOneTileRequested) { |
| 512 base::test::ScopedFeatureList features; | |
| 513 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 514 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 486 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 515 home_page_client->SetHomePageEnabled(true); | 487 home_page_client->SetHomePageEnabled(true); |
| 516 DisableRemoteSuggestions(); | 488 DisableRemoteSuggestions(); |
| 517 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 489 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 518 .WillRepeatedly(InvokeCallbackArgument<0>( | 490 .WillRepeatedly(InvokeCallbackArgument<0>( |
| 519 (MostVisitedURLList{MakeMostVisitedURL("Site 1", "http://site1/")}))); | 491 (MostVisitedURLList{MakeMostVisitedURL("Site 1", "http://site1/")}))); |
| 520 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 492 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 521 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 493 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 522 .Times(AnyNumber()) | 494 .Times(AnyNumber()) |
| 523 .WillRepeatedly(Return(false)); | 495 .WillRepeatedly(Return(false)); |
| 524 EXPECT_CALL(mock_observer_, | 496 EXPECT_CALL(mock_observer_, |
| 525 OnMostVisitedURLsAvailable(ElementsAre( | 497 OnMostVisitedURLsAvailable(ElementsAre( |
| 526 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE)))); | 498 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE)))); |
| 527 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 499 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 528 /*num_sites=*/1); | 500 /*num_sites=*/1); |
| 529 base::RunLoop().RunUntilIdle(); | 501 base::RunLoop().RunUntilIdle(); |
| 530 } | 502 } |
| 531 | 503 |
| 532 TEST_P(MostVisitedSitesTest, ShouldDeduplicateHomePageWithTopSites) { | 504 TEST_P(MostVisitedSitesTest, ShouldDeduplicateHomePageWithTopSites) { |
| 533 base::test::ScopedFeatureList features; | |
| 534 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 535 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 505 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 536 home_page_client->SetHomePageEnabled(true); | 506 home_page_client->SetHomePageEnabled(true); |
| 537 DisableRemoteSuggestions(); | 507 DisableRemoteSuggestions(); |
| 538 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 508 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 539 .WillRepeatedly(InvokeCallbackArgument<0>( | 509 .WillRepeatedly(InvokeCallbackArgument<0>( |
| 540 (MostVisitedURLList{MakeMostVisitedURL("Site 1", "http://site1/"), | 510 (MostVisitedURLList{MakeMostVisitedURL("Site 1", "http://site1/"), |
| 541 MakeMostVisitedURL("", kHomePageUrl)}))); | 511 MakeMostVisitedURL("", kHomePageUrl)}))); |
| 542 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 512 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 543 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 513 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 544 .Times(AnyNumber()) | 514 .Times(AnyNumber()) |
| 545 .WillRepeatedly(Return(false)); | 515 .WillRepeatedly(Return(false)); |
| 546 EXPECT_CALL(mock_observer_, | 516 EXPECT_CALL(mock_observer_, |
| 547 OnMostVisitedURLsAvailable( | 517 OnMostVisitedURLsAvailable( |
| 548 AllOf(FirstTileIs("", kHomePageUrl, TileSource::HOMEPAGE), | 518 AllOf(FirstTileIs("", kHomePageUrl, TileSource::HOMEPAGE), |
| 549 Not(Contains(MatchesTile("", kHomePageUrl, | 519 Not(Contains(MatchesTile("", kHomePageUrl, |
| 550 TileSource::TOP_SITES)))))); | 520 TileSource::TOP_SITES)))))); |
| 551 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 521 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 552 /*num_sites=*/3); | 522 /*num_sites=*/3); |
| 553 base::RunLoop().RunUntilIdle(); | 523 base::RunLoop().RunUntilIdle(); |
| 554 } | 524 } |
| 555 | 525 |
| 556 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfItIsNewTabPage) { | 526 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfItIsNewTabPage) { |
| 557 base::test::ScopedFeatureList features; | |
| 558 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 559 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 527 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 560 home_page_client->SetHomePageEnabled(true); | 528 home_page_client->SetHomePageEnabled(true); |
| 561 home_page_client->SetNtpIsHomePage(true); | 529 home_page_client->SetNtpIsHomePage(true); |
| 562 DisableRemoteSuggestions(); | 530 DisableRemoteSuggestions(); |
| 563 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 531 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 564 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | 532 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); |
| 565 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 533 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 566 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 534 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 567 .Times(AnyNumber()) | 535 .Times(AnyNumber()) |
| 568 .WillRepeatedly(Return(false)); | 536 .WillRepeatedly(Return(false)); |
| 569 EXPECT_CALL(mock_observer_, | 537 EXPECT_CALL(mock_observer_, |
| 570 OnMostVisitedURLsAvailable(Not(Contains( | 538 OnMostVisitedURLsAvailable(Not(Contains( |
| 571 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); | 539 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); |
| 572 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 540 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 573 /*num_sites=*/3); | 541 /*num_sites=*/3); |
| 574 base::RunLoop().RunUntilIdle(); | 542 base::RunLoop().RunUntilIdle(); |
| 575 } | 543 } |
| 576 | 544 |
| 577 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfThereIsNone) { | 545 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfThereIsNone) { |
| 578 base::test::ScopedFeatureList features; | |
| 579 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 580 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 546 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 581 home_page_client->SetHomePageEnabled(false); | 547 home_page_client->SetHomePageEnabled(false); |
| 582 DisableRemoteSuggestions(); | 548 DisableRemoteSuggestions(); |
| 583 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 549 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 584 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | 550 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); |
| 585 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 551 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 586 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 552 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 587 .Times(AnyNumber()) | 553 .Times(AnyNumber()) |
| 588 .WillRepeatedly(Return(false)); | 554 .WillRepeatedly(Return(false)); |
| 589 EXPECT_CALL(mock_observer_, | 555 EXPECT_CALL(mock_observer_, |
| 590 OnMostVisitedURLsAvailable(Not(Contains( | 556 OnMostVisitedURLsAvailable(Not(Contains( |
| 591 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); | 557 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); |
| 592 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 558 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 593 /*num_sites=*/3); | 559 /*num_sites=*/3); |
| 594 base::RunLoop().RunUntilIdle(); | 560 base::RunLoop().RunUntilIdle(); |
| 595 } | 561 } |
| 596 | 562 |
| 597 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfEmptyUrl) { | 563 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfEmptyUrl) { |
| 598 const std::string kEmptyHomePageUrl; | 564 const std::string kEmptyHomePageUrl; |
| 599 base::test::ScopedFeatureList features; | |
| 600 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 601 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 565 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 602 home_page_client->SetHomePageEnabled(true); | 566 home_page_client->SetHomePageEnabled(true); |
| 603 home_page_client->SetHomePageUrl(GURL(kEmptyHomePageUrl)); | 567 home_page_client->SetHomePageUrl(GURL(kEmptyHomePageUrl)); |
| 604 DisableRemoteSuggestions(); | 568 DisableRemoteSuggestions(); |
| 605 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 569 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 606 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); | 570 .WillRepeatedly(InvokeCallbackArgument<0>(MostVisitedURLList{})); |
| 607 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 571 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 608 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(kEmptyHomePageUrl))) | 572 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(kEmptyHomePageUrl))) |
| 609 .Times(AnyNumber()) | 573 .Times(AnyNumber()) |
| 610 .WillRepeatedly(Return(false)); | 574 .WillRepeatedly(Return(false)); |
| 611 EXPECT_CALL(mock_observer_, | 575 EXPECT_CALL(mock_observer_, |
| 612 OnMostVisitedURLsAvailable(Not( | 576 OnMostVisitedURLsAvailable(Not( |
| 613 FirstTileIs("", kEmptyHomePageUrl, TileSource::HOMEPAGE)))); | 577 FirstTileIs("", kEmptyHomePageUrl, TileSource::HOMEPAGE)))); |
| 614 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 578 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 615 /*num_sites=*/3); | 579 /*num_sites=*/3); |
| 616 base::RunLoop().RunUntilIdle(); | 580 base::RunLoop().RunUntilIdle(); |
| 617 } | 581 } |
| 618 | 582 |
| 619 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfBlacklisted) { | 583 TEST_P(MostVisitedSitesTest, ShouldNotIncludeHomePageIfBlacklisted) { |
| 620 base::test::ScopedFeatureList features; | |
| 621 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 622 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 584 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 623 home_page_client->SetHomePageEnabled(true); | 585 home_page_client->SetHomePageEnabled(true); |
| 624 DisableRemoteSuggestions(); | 586 DisableRemoteSuggestions(); |
| 625 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 587 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 626 .WillRepeatedly(InvokeCallbackArgument<0>( | 588 .WillRepeatedly(InvokeCallbackArgument<0>( |
| 627 (MostVisitedURLList{MakeMostVisitedURL("", kHomePageUrl)}))); | 589 (MostVisitedURLList{MakeMostVisitedURL("", kHomePageUrl)}))); |
| 628 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 590 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 629 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 591 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 630 .Times(AnyNumber()) | 592 .Times(AnyNumber()) |
| 631 .WillRepeatedly(Return(false)); | 593 .WillRepeatedly(Return(false)); |
| 632 | 594 |
| 633 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 595 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 634 .Times(AtLeast(1)) | 596 .Times(AtLeast(1)) |
| 635 .WillRepeatedly(Return(true)); | 597 .WillRepeatedly(Return(true)); |
| 636 EXPECT_CALL(mock_observer_, | 598 EXPECT_CALL(mock_observer_, |
| 637 OnMostVisitedURLsAvailable(Not(Contains( | 599 OnMostVisitedURLsAvailable(Not(Contains( |
| 638 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); | 600 MatchesTile("", kHomePageUrl, TileSource::HOMEPAGE))))); |
| 639 | 601 |
| 640 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, | 602 most_visited_sites_->SetMostVisitedURLsObserver(&mock_observer_, |
| 641 /*num_sites=*/3); | 603 /*num_sites=*/3); |
| 642 base::RunLoop().RunUntilIdle(); | 604 base::RunLoop().RunUntilIdle(); |
| 643 } | 605 } |
| 644 | 606 |
| 645 TEST_P(MostVisitedSitesTest, ShouldPinHomePageAgainIfBlacklistingUndone) { | 607 TEST_P(MostVisitedSitesTest, ShouldPinHomePageAgainIfBlacklistingUndone) { |
| 646 base::test::ScopedFeatureList features; | |
| 647 features.InitAndEnableFeature(ntp_tiles::kPinHomePageAsTileFeature); | |
| 648 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); | 608 FakeHomePageClient* home_page_client = RegisterNewHomePageClient(); |
| 649 home_page_client->SetHomePageEnabled(true); | 609 home_page_client->SetHomePageEnabled(true); |
| 650 | 610 |
| 651 DisableRemoteSuggestions(); | 611 DisableRemoteSuggestions(); |
| 652 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) | 612 EXPECT_CALL(*mock_top_sites_, GetMostVisitedURLs(_, false)) |
| 653 .WillOnce(InvokeCallbackArgument<0>( | 613 .WillOnce(InvokeCallbackArgument<0>( |
| 654 (MostVisitedURLList{MakeMostVisitedURL("", kHomePageUrl)}))); | 614 (MostVisitedURLList{MakeMostVisitedURL("", kHomePageUrl)}))); |
| 655 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); | 615 EXPECT_CALL(*mock_top_sites_, SyncWithHistory()); |
| 656 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) | 616 EXPECT_CALL(*mock_top_sites_, IsBlacklisted(Eq(GURL(kHomePageUrl)))) |
| 657 .Times(AtLeast(1)) | 617 .Times(AtLeast(1)) |
| (...skipping 566 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1224 TileSource::TOP_SITES), | 1184 TileSource::TOP_SITES), |
| 1225 MatchesTile("Site 4", "https://www.site4.com/", | 1185 MatchesTile("Site 4", "https://www.site4.com/", |
| 1226 TileSource::TOP_SITES), | 1186 TileSource::TOP_SITES), |
| 1227 MatchesTile("Site 1", "https://www.site1.com/", TileSource::POPULAR), | 1187 MatchesTile("Site 1", "https://www.site1.com/", TileSource::POPULAR), |
| 1228 MatchesTile("Site 2", "https://www.site2.com/", | 1188 MatchesTile("Site 2", "https://www.site2.com/", |
| 1229 TileSource::POPULAR))); | 1189 TileSource::POPULAR))); |
| 1230 } | 1190 } |
| 1231 | 1191 |
| 1232 } // namespace | 1192 } // namespace |
| 1233 } // namespace ntp_tiles | 1193 } // namespace ntp_tiles |
| OLD | NEW |