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 3 // found in the LICENSE file. 4 5 #ifndef COMPONENTS_NTP_SNIPPETS_CATEGORY_RANKERS_FAKE_CATEGORY_RANKER_H_ 6 #define COMPONENTS_NTP_SNIPPETS_CATEGORY_RANKERS_FAKE_CATEGORY_RANKER_H_ 7 8 #include <vector> 9 10 #include "base/time/time.h" 11 #include "components/ntp_snippets/category.h" 12 #include "components/ntp_snippets/category_rankers/category_ranker.h" 13 #include "testing/gmock/include/gmock/gmock.h" 14 15 namespace ntp_snippets { 16 17 class FakeCategoryRanker : public CategoryRanker { 18 public: 19 FakeCategoryRanker(); 20 ~FakeCategoryRanker() override; 21 SetOrder(const std::vector<Category> & new_order)22 void SetOrder(const std::vector<Category>& new_order) { 23 categories_ = new_order; 24 } 25 26 // CategoryRanker implementation. 27 bool Compare(Category left, Category right) const override; 28 void ClearHistory(base::Time begin, base::Time end) override; 29 void AppendCategoryIfNecessary(Category category) override; 30 void InsertCategoryBeforeIfNecessary(Category category_to_insert, 31 Category anchor) override; 32 void InsertCategoryAfterIfNecessary(Category category_to_insert, 33 Category anchor) override; 34 std::vector<CategoryRanker::DebugDataItem> GetDebugData() override; 35 void OnSuggestionOpened(Category category) override; 36 void OnCategoryDismissed(Category category) override; 37 38 private: 39 std::vector<Category> categories_; 40 }; 41 42 } // namespace ntp_snippets 43 44 #endif // COMPONENTS_NTP_SNIPPETS_CATEGORY_RANKERS_FAKE_CATEGORY_RANKER_H_ 45