# Copyright 2014 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/ui.gni") import("//third_party/protobuf/proto_library.gni") if (is_android) { import("//build/config/android/config.gni") import("//build/config/android/rules.gni") } static_library("ntp_snippets") { sources = [ "bookmarks/bookmark_last_visit_utils.cc", "bookmarks/bookmark_last_visit_utils.h", "bookmarks/bookmark_suggestions_provider.cc", "bookmarks/bookmark_suggestions_provider.h", "breaking_news/breaking_news_listener.h", "breaking_news/breaking_news_metrics.cc", "breaking_news/breaking_news_metrics.h", "breaking_news/subscription_json_request.cc", "breaking_news/subscription_json_request.h", "breaking_news/subscription_manager.cc", "breaking_news/subscription_manager.h", "breaking_news/subscription_manager_impl.cc", "breaking_news/subscription_manager_impl.h", "callbacks.h", "category.cc", "category.h", "category_info.cc", "category_info.h", "category_rankers/category_ranker.h", "category_rankers/click_based_category_ranker.cc", "category_rankers/click_based_category_ranker.h", "category_rankers/constant_category_ranker.cc", "category_rankers/constant_category_ranker.h", "category_status.cc", "category_status.h", "content_suggestion.cc", "content_suggestion.h", "content_suggestions_metrics.cc", "content_suggestions_metrics.h", "content_suggestions_provider.cc", "content_suggestions_provider.h", "content_suggestions_service.cc", "content_suggestions_service.h", "contextual/contextual_content_suggestions_service.cc", "contextual/contextual_content_suggestions_service.h", "contextual/contextual_content_suggestions_service_proxy.cc", "contextual/contextual_content_suggestions_service_proxy.h", "contextual/contextual_suggestion.cc", "contextual/contextual_suggestion.h", "contextual/contextual_suggestions_cache.cc", "contextual/contextual_suggestions_cache.h", "contextual/contextual_suggestions_features.cc", "contextual/contextual_suggestions_features.h", "contextual/contextual_suggestions_fetch.cc", "contextual/contextual_suggestions_fetch.h", "contextual/contextual_suggestions_fetcher.h", "contextual/contextual_suggestions_fetcher_impl.cc", "contextual/contextual_suggestions_fetcher_impl.h", "contextual/contextual_suggestions_result.cc", "contextual/contextual_suggestions_result.h", "contextual/reporting/contextual_suggestions_composite_reporter.cc", "contextual/reporting/contextual_suggestions_composite_reporter.h", "contextual/reporting/contextual_suggestions_debugging_reporter.cc", "contextual/reporting/contextual_suggestions_debugging_reporter.h", "contextual/reporting/contextual_suggestions_metrics_reporter.cc", "contextual/reporting/contextual_suggestions_metrics_reporter.h", "contextual/reporting/contextual_suggestions_reporter.cc", "contextual/reporting/contextual_suggestions_reporter.h", "contextual/reporting/contextual_suggestions_ukm_entry.cc", "contextual/reporting/contextual_suggestions_ukm_entry.h", "features.cc", "features.h", "logger.cc", "logger.h", "ntp_snippets_constants.cc", "ntp_snippets_constants.h", "pref_names.cc", "pref_names.h", "pref_util.cc", "pref_util.h", "reading_list/reading_list_suggestions_provider.cc", "reading_list/reading_list_suggestions_provider.h", "remote/cached_image_fetcher.cc", "remote/cached_image_fetcher.h", "remote/json_request.cc", "remote/json_request.h", "remote/json_to_categories.cc", "remote/json_to_categories.h", "remote/persistent_scheduler.h", "remote/prefetched_pages_tracker.h", "remote/prefetched_pages_tracker_impl.cc", "remote/prefetched_pages_tracker_impl.h", "remote/remote_suggestion.cc", "remote/remote_suggestion.h", "remote/remote_suggestions_database.cc", "remote/remote_suggestions_database.h", "remote/remote_suggestions_fetcher.cc", "remote/remote_suggestions_fetcher.h", "remote/remote_suggestions_fetcher_impl.cc", "remote/remote_suggestions_fetcher_impl.h", "remote/remote_suggestions_provider.cc", "remote/remote_suggestions_provider.h", "remote/remote_suggestions_provider_impl.cc", "remote/remote_suggestions_provider_impl.h", "remote/remote_suggestions_scheduler.h", "remote/remote_suggestions_scheduler_impl.cc", "remote/remote_suggestions_scheduler_impl.h", "remote/remote_suggestions_status_service.h", "remote/remote_suggestions_status_service_impl.cc", "remote/remote_suggestions_status_service_impl.h", "remote/request_params.cc", "remote/request_params.h", "remote/request_throttler.cc", "remote/request_throttler.h", "sessions/foreign_sessions_suggestions_provider.cc", "sessions/foreign_sessions_suggestions_provider.h", "sessions/tab_delegate_sync_adapter.cc", "sessions/tab_delegate_sync_adapter.h", "status.cc", "status.h", "switches.cc", "switches.h", "time_serialization.cc", "time_serialization.h", "user_classifier.cc", "user_classifier.h", ] if (is_android) { sources += [ "breaking_news/breaking_news_gcm_app_handler.cc", "breaking_news/breaking_news_gcm_app_handler.h", ] } public_deps = [ "//base", "//components/keyed_service/core", "//components/leveldb_proto", "//components/prefs", "//components/resources", "//components/sync", "//components/version_info", "//net", "//ui/base", "//url", ] deps = [ ":explore_protos", "//components/bookmarks/browser", "//components/data_use_measurement/core", "//components/favicon/core", "//components/favicon_base", "//components/gcm_driver", "//components/history/core/browser", "//components/image_fetcher/core", "//components/language/core/browser", "//components/metrics", "//components/ntp_snippets/remote/proto", "//components/offline_pages/core", "//components/reading_list/core", "//components/sessions", "//components/strings", "//components/sync_sessions", "//components/unified_consent", "//components/url_formatter", "//components/variations", "//components/variations/net", "//components/variations/service", "//components/web_resource", "//services/identity/public/cpp", "//services/metrics/public/cpp:metrics_cpp", "//services/metrics/public/cpp:ukm_builders", "//services/network/public/cpp", "//services/network/public/mojom", "//third_party/icu/", "//third_party/protobuf:protobuf_lite", "//ui/gfx", ] } if (is_android) { java_cpp_enum("ntp_snippets_java_enums_srcjar") { sources = [ "category.h", "category_info.h", "category_status.h", "content_suggestions_service.cc", "contextual/reporting/contextual_suggestions_reporter.h", ] } } proto_library("explore_protos") { sources = [ "contextual/proto/chrome_search_api_request_context.proto", "contextual/proto/get_pivots_request.proto", "contextual/proto/get_pivots_response.proto", ] } source_set("unit_tests") { testonly = true sources = [ "bookmarks/bookmark_last_visit_utils_unittest.cc", "bookmarks/bookmark_suggestions_provider_unittest.cc", "breaking_news/subscription_json_request_unittest.cc", "breaking_news/subscription_manager_impl_unittest.cc", "category_rankers/click_based_category_ranker_unittest.cc", "category_rankers/constant_category_ranker_unittest.cc", "category_unittest.cc", "content_suggestions_metrics_unittest.cc", "content_suggestions_service_unittest.cc", "contextual/contextual_content_suggestions_service_proxy_unittest.cc", "contextual/contextual_content_suggestions_service_unittest.cc", "contextual/contextual_suggestions_fetch_unittest.cc", "contextual/contextual_suggestions_fetcher_impl_unittest.cc", "contextual/reporting/contextual_suggestions_composite_reporter_unittest.cc", "contextual/reporting/contextual_suggestions_metrics_reporter_unittest.cc", "contextual/reporting/contextual_suggestions_ukm_entry_unittest.cc", "features_unittest.cc", "logger_unittest.cc", "reading_list/reading_list_suggestions_provider_unittest.cc", "remote/cached_image_fetcher_unittest.cc", "remote/json_request_unittest.cc", "remote/prefetched_pages_tracker_impl_unittest.cc", "remote/remote_suggestion_unittest.cc", "remote/remote_suggestions_database_unittest.cc", "remote/remote_suggestions_fetcher_impl_unittest.cc", "remote/remote_suggestions_provider_impl_unittest.cc", "remote/remote_suggestions_scheduler_impl_unittest.cc", "remote/remote_suggestions_status_service_impl_unittest.cc", "remote/request_throttler_unittest.cc", "remote/test_utils.cc", "remote/test_utils.h", "sessions/foreign_sessions_suggestions_provider_unittest.cc", "sessions/tab_delegate_sync_adapter_unittest.cc", "time_serialization_unittest.cc", "user_classifier_unittest.cc", ] if (is_android) { sources += [ "breaking_news/breaking_news_gcm_app_handler_unittest.cc" ] } deps = [ ":explore_protos", ":ntp_snippets", ":test_support", "//base", "//base/test:test_support", "//components/bookmarks/browser", "//components/bookmarks/test", "//components/gcm_driver", "//components/gcm_driver/instance_id", "//components/image_fetcher/core", "//components/image_fetcher/core:test_support", "//components/leveldb_proto:test_support", "//components/ntp_snippets/remote/proto", "//components/offline_pages/core", "//components/offline_pages/core:test_support", "//components/offline_pages/core/background:test_support", "//components/prefs:test_support", "//components/reading_list/core", "//components/sessions", "//components/sessions:test_support", "//components/strings", "//components/sync:test_support_driver", "//components/sync_preferences:test_support", "//components/sync_sessions", "//components/ukm:test_support", "//components/variations:test_support", "//components/web_resource:web_resource", "//google_apis/gcm", "//net:test_support", "//services/identity/public/cpp", "//services/identity/public/cpp:test_support", "//services/metrics/public/cpp:ukm_builders", "//services/network:test_support", "//services/network/public/cpp", "//services/network/public/mojom", "//testing/gtest", "//third_party/icu/", "//ui/gfx:test_support", ] } source_set("test_support") { testonly = true sources = [ "category_rankers/fake_category_ranker.cc", "category_rankers/fake_category_ranker.h", "category_rankers/mock_category_ranker.cc", "category_rankers/mock_category_ranker.h", "contextual/contextual_suggestions_test_utils.cc", "contextual/contextual_suggestions_test_utils.h", "fake_content_suggestions_provider_observer.cc", "fake_content_suggestions_provider_observer.h", "mock_content_suggestions_provider.cc", "mock_content_suggestions_provider.h", "mock_content_suggestions_provider_observer.cc", "mock_content_suggestions_provider_observer.h", "offline_pages/offline_pages_test_utils.cc", "offline_pages/offline_pages_test_utils.h", "remote/remote_suggestion_builder.cc", "remote/remote_suggestion_builder.h", ] deps = [ ":ntp_snippets", "//base", "//components/ntp_snippets/remote/proto", "//components/offline_pages/core", "//components/offline_pages/core:test_support", "//testing/gmock", "//testing/gtest", ] }