| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/offline_pages/offline_page_suggestions_provide
r.h" | 5 #include "components/ntp_snippets/offline_pages/offline_page_suggestions_provide
r.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 127 } | 127 } |
| 128 | 128 |
| 129 Category recent_tabs_category() { | 129 Category recent_tabs_category() { |
| 130 return category_factory_.FromKnownCategory(KnownCategories::RECENT_TABS); | 130 return category_factory_.FromKnownCategory(KnownCategories::RECENT_TABS); |
| 131 } | 131 } |
| 132 | 132 |
| 133 Category downloads_category() { | 133 Category downloads_category() { |
| 134 return category_factory_.FromKnownCategory(KnownCategories::DOWNLOADS); | 134 return category_factory_.FromKnownCategory(KnownCategories::DOWNLOADS); |
| 135 } | 135 } |
| 136 | 136 |
| 137 std::string GetDummySuggestionId(Category category, int id) { | 137 ContentSuggestion::ID GetDummySuggestionId(Category category, int id) { |
| 138 return provider_->MakeUniqueID(category, base::IntToString(id)); | 138 return ContentSuggestion::ID(category, base::IntToString(id)); |
| 139 } | 139 } |
| 140 | 140 |
| 141 ContentSuggestion CreateDummySuggestion(Category category, int id) { | 141 ContentSuggestion CreateDummySuggestion(Category category, int id) { |
| 142 std::string strid = base::IntToString(id); | 142 std::string strid = base::IntToString(id); |
| 143 ContentSuggestion result( | 143 ContentSuggestion result( |
| 144 GetDummySuggestionId(category, id), | 144 GetDummySuggestionId(category, id), |
| 145 GURL("file:///some/folder/test" + strid + ".mhtml")); | 145 GURL("file:///some/folder/test" + strid + ".mhtml")); |
| 146 result.set_title(base::UTF8ToUTF16("http://dummy.com/" + strid)); | 146 result.set_title(base::UTF8ToUTF16("http://dummy.com/" + strid)); |
| 147 return result; | 147 return result; |
| 148 } | 148 } |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 341 } | 341 } |
| 342 | 342 |
| 343 TEST_F(OfflinePageSuggestionsProviderTest, | 343 TEST_F(OfflinePageSuggestionsProviderTest, |
| 344 ShouldInvalidateWhenOfflinePageDeleted) { | 344 ShouldInvalidateWhenOfflinePageDeleted) { |
| 345 model()->mutable_items()->push_back(CreateDummyRecentTab(1)); | 345 model()->mutable_items()->push_back(CreateDummyRecentTab(1)); |
| 346 model()->mutable_items()->push_back(CreateDummyRecentTab(2)); | 346 model()->mutable_items()->push_back(CreateDummyRecentTab(2)); |
| 347 model()->mutable_items()->push_back(CreateDummyRecentTab(3)); | 347 model()->mutable_items()->push_back(CreateDummyRecentTab(3)); |
| 348 FireOfflinePageModelChanged(); | 348 FireOfflinePageModelChanged(); |
| 349 | 349 |
| 350 // Invalidation of suggestion 2 should be forwarded. | 350 // Invalidation of suggestion 2 should be forwarded. |
| 351 EXPECT_CALL( | 351 EXPECT_CALL(*observer(), |
| 352 *observer(), | 352 OnSuggestionInvalidated( |
| 353 OnSuggestionInvalidated(_, recent_tabs_category(), | 353 _, GetDummySuggestionId(recent_tabs_category(), 2))); |
| 354 GetDummySuggestionId(recent_tabs_category(), 2))); | |
| 355 FireOfflinePageDeleted(model()->items().at(1)); | 354 FireOfflinePageDeleted(model()->items().at(1)); |
| 356 } | 355 } |
| 357 | 356 |
| 358 TEST_F(OfflinePageSuggestionsProviderTest, ShouldClearDismissedOnInvalidate) { | 357 TEST_F(OfflinePageSuggestionsProviderTest, ShouldClearDismissedOnInvalidate) { |
| 359 model()->mutable_items()->push_back(CreateDummyRecentTab(1)); | 358 model()->mutable_items()->push_back(CreateDummyRecentTab(1)); |
| 360 model()->mutable_items()->push_back(CreateDummyRecentTab(2)); | 359 model()->mutable_items()->push_back(CreateDummyRecentTab(2)); |
| 361 model()->mutable_items()->push_back(CreateDummyRecentTab(3)); | 360 model()->mutable_items()->push_back(CreateDummyRecentTab(3)); |
| 362 FireOfflinePageModelChanged(); | 361 FireOfflinePageModelChanged(); |
| 363 EXPECT_THAT(ReadDismissedIDsFromPrefs(recent_tabs_category()), IsEmpty()); | 362 EXPECT_THAT(ReadDismissedIDsFromPrefs(recent_tabs_category()), IsEmpty()); |
| 364 EXPECT_THAT(ReadDismissedIDsFromPrefs(downloads_category()), IsEmpty()); | 363 EXPECT_THAT(ReadDismissedIDsFromPrefs(downloads_category()), IsEmpty()); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 390 EXPECT_THAT(ReadDismissedIDsFromPrefs(recent_tabs_category()), IsEmpty()); | 389 EXPECT_THAT(ReadDismissedIDsFromPrefs(recent_tabs_category()), IsEmpty()); |
| 391 EXPECT_THAT(ReadDismissedIDsFromPrefs(downloads_category()), SizeIs(1)); | 390 EXPECT_THAT(ReadDismissedIDsFromPrefs(downloads_category()), SizeIs(1)); |
| 392 | 391 |
| 393 model()->mutable_items()->clear(); | 392 model()->mutable_items()->clear(); |
| 394 FireOfflinePageModelChanged(); | 393 FireOfflinePageModelChanged(); |
| 395 EXPECT_THAT(ReadDismissedIDsFromPrefs(recent_tabs_category()), IsEmpty()); | 394 EXPECT_THAT(ReadDismissedIDsFromPrefs(recent_tabs_category()), IsEmpty()); |
| 396 EXPECT_THAT(ReadDismissedIDsFromPrefs(downloads_category()), IsEmpty()); | 395 EXPECT_THAT(ReadDismissedIDsFromPrefs(downloads_category()), IsEmpty()); |
| 397 } | 396 } |
| 398 | 397 |
| 399 } // namespace ntp_snippets | 398 } // namespace ntp_snippets |
| OLD | NEW |