| 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_snippets/ntp_snippets_service.h" | 5 #include "components/ntp_snippets/ntp_snippets_service.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 322 | 322 |
| 323 // Add an initial fetch response, as the service tries to fetch when there | 323 // Add an initial fetch response, as the service tries to fetch when there |
| 324 // is nothing in the DB. | 324 // is nothing in the DB. |
| 325 SetUpFetchResponse(GetTestJson({GetSnippet()})); | 325 SetUpFetchResponse(GetTestJson({GetSnippet()})); |
| 326 | 326 |
| 327 service_.reset(new NTPSnippetsService( | 327 service_.reset(new NTPSnippetsService( |
| 328 enabled, pref_service(), nullptr, "fr", &scheduler_, | 328 enabled, pref_service(), nullptr, "fr", &scheduler_, |
| 329 std::move(snippets_fetcher), /*image_fetcher=*/nullptr, | 329 std::move(snippets_fetcher), /*image_fetcher=*/nullptr, |
| 330 /*image_fetcher=*/nullptr, base::MakeUnique<NTPSnippetsDatabase>( | 330 /*image_fetcher=*/nullptr, base::MakeUnique<NTPSnippetsDatabase>( |
| 331 database_dir_.path(), task_runner), | 331 database_dir_.path(), task_runner), |
| 332 base::MakeUnique<NTPSnippetsStatusService>( | 332 base::MakeUnique<NTPSnippetsStatusService>(fake_signin_manager(), |
| 333 fake_signin_manager(), mock_sync_service(), pref_service()))); | 333 pref_service()))); |
| 334 | 334 |
| 335 if (enabled) | 335 if (enabled) |
| 336 WaitForDBLoad(service_.get()); | 336 WaitForDBLoad(service_.get()); |
| 337 } | 337 } |
| 338 | 338 |
| 339 std::string MakeUniqueID(const std::string& within_category_id) { | 339 std::string MakeUniqueID(const std::string& within_category_id) { |
| 340 return NTPSnippetsService::MakeUniqueID( | 340 return NTPSnippetsService::MakeUniqueID( |
| 341 ContentSuggestionsCategory::ARTICLES, within_category_id); | 341 ContentSuggestionsCategory::ARTICLES, within_category_id); |
| 342 } | 342 } |
| 343 | 343 |
| (...skipping 516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 860 // Dismiss the snippet via the mashable source corpus ID. | 860 // Dismiss the snippet via the mashable source corpus ID. |
| 861 service()->DismissSuggestion(MakeUniqueID(source_urls[0])); | 861 service()->DismissSuggestion(MakeUniqueID(source_urls[0])); |
| 862 EXPECT_THAT(service()->snippets(), IsEmpty()); | 862 EXPECT_THAT(service()->snippets(), IsEmpty()); |
| 863 | 863 |
| 864 // The same article from the AOL domain should now be detected as dismissed. | 864 // The same article from the AOL domain should now be detected as dismissed. |
| 865 LoadFromJSONString(GetTestJson({GetSnippetWithUrlAndTimesAndSources( | 865 LoadFromJSONString(GetTestJson({GetSnippetWithUrlAndTimesAndSources( |
| 866 source_urls[1], creation, expiry, source_urls, publishers, amp_urls)})); | 866 source_urls[1], creation, expiry, source_urls, publishers, amp_urls)})); |
| 867 ASSERT_THAT(service()->snippets(), IsEmpty()); | 867 ASSERT_THAT(service()->snippets(), IsEmpty()); |
| 868 } | 868 } |
| 869 | 869 |
| 870 TEST_F(NTPSnippetsServiceTest, HistorySyncStateChanges) { | 870 TEST_F(NTPSnippetsServiceTest, StatusChanges) { |
| 871 MockServiceObserver mock_observer; | 871 MockServiceObserver mock_observer; |
| 872 service()->AddObserver(&mock_observer); | 872 service()->AddObserver(&mock_observer); |
| 873 | 873 |
| 874 // Simulate user signed out | 874 // Simulate user signed out |
| 875 SetUpFetchResponse(GetTestJson({GetSnippet()})); | 875 SetUpFetchResponse(GetTestJson({GetSnippet()})); |
| 876 EXPECT_CALL(mock_observer, NTPSnippetsServiceDisabledReasonChanged( | 876 EXPECT_CALL(mock_observer, NTPSnippetsServiceDisabledReasonChanged( |
| 877 DisabledReason::SIGNED_OUT)); | 877 DisabledReason::SIGNED_OUT)); |
| 878 service()->OnDisabledReasonChanged(DisabledReason::SIGNED_OUT); | 878 service()->OnDisabledReasonChanged(DisabledReason::SIGNED_OUT); |
| 879 base::RunLoop().RunUntilIdle(); | 879 base::RunLoop().RunUntilIdle(); |
| 880 EXPECT_EQ(NTPSnippetsService::State::DISABLED, service()->state_); | 880 EXPECT_EQ(NTPSnippetsService::State::DISABLED, service()->state_); |
| 881 EXPECT_THAT(service()->snippets(), IsEmpty()); // No fetch should be made. | 881 EXPECT_THAT(service()->snippets(), IsEmpty()); // No fetch should be made. |
| 882 | 882 |
| 883 // Simulate user sign in. The service should be ready again and load snippets. | 883 // Simulate user sign in. The service should be ready again and load snippets. |
| 884 SetUpFetchResponse(GetTestJson({GetSnippet()})); | 884 SetUpFetchResponse(GetTestJson({GetSnippet()})); |
| 885 EXPECT_CALL(mock_observer, | 885 EXPECT_CALL(mock_observer, |
| 886 NTPSnippetsServiceDisabledReasonChanged(DisabledReason::NONE)); | 886 NTPSnippetsServiceDisabledReasonChanged(DisabledReason::NONE)); |
| 887 EXPECT_CALL(mock_scheduler(), Schedule(_, _, _, _)).Times(1); | 887 EXPECT_CALL(mock_scheduler(), Schedule(_, _, _, _)).Times(1); |
| 888 service()->OnDisabledReasonChanged(DisabledReason::NONE); | 888 service()->OnDisabledReasonChanged(DisabledReason::NONE); |
| 889 base::RunLoop().RunUntilIdle(); | 889 base::RunLoop().RunUntilIdle(); |
| 890 EXPECT_EQ(NTPSnippetsService::State::READY, service()->state_); | 890 EXPECT_EQ(NTPSnippetsService::State::READY, service()->state_); |
| 891 EXPECT_FALSE(service()->snippets().empty()); | 891 EXPECT_FALSE(service()->snippets().empty()); |
| 892 | 892 |
| 893 service()->RemoveObserver(&mock_observer); | 893 service()->RemoveObserver(&mock_observer); |
| 894 } | 894 } |
| 895 | 895 |
| 896 } // namespace ntp_snippets | 896 } // namespace ntp_snippets |
| OLD | NEW |