| # Copyright 2022 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//components/compose/features.gni") |
| |
| static_library("default_model") { |
| sources = [ |
| "android_home_module_ranker.cc", |
| "android_home_module_ranker.h", |
| "chrome_user_engagement.cc", |
| "chrome_user_engagement.h", |
| "contextual_page_actions_model.cc", |
| "contextual_page_actions_model.h", |
| "cross_device_user_segment.cc", |
| "cross_device_user_segment.h", |
| "database_api_clients.cc", |
| "database_api_clients.h", |
| "device_switcher_model.cc", |
| "device_switcher_model.h", |
| "device_switcher_result_dispatcher.cc", |
| "device_switcher_result_dispatcher.h", |
| "fedcm_user_segment.cc", |
| "fedcm_user_segment.h", |
| "feed_user_segment.cc", |
| "feed_user_segment.h", |
| "ios_default_browser_promo.cc", |
| "ios_default_browser_promo.h", |
| "ios_module_ranker.cc", |
| "ios_module_ranker.h", |
| "low_user_engagement_model.cc", |
| "low_user_engagement_model.h", |
| "metrics_clustering.cc", |
| "metrics_clustering.h", |
| "most_visited_tiles_user.cc", |
| "most_visited_tiles_user.h", |
| "optimization_target_segmentation_dummy.cc", |
| "optimization_target_segmentation_dummy.h", |
| "password_manager_user_segment.cc", |
| "password_manager_user_segment.h", |
| "resume_heavy_user_model.cc", |
| "resume_heavy_user_model.h", |
| "search_user_model.cc", |
| "search_user_model.h", |
| "shopping_user_model.cc", |
| "shopping_user_model.h", |
| "tab_resumption_ranker.cc", |
| "tab_resumption_ranker.h", |
| "tips_notifications_ranker.cc", |
| "tips_notifications_ranker.h", |
| "url_visit_resumption_ranker.cc", |
| "url_visit_resumption_ranker.h", |
| ] |
| deps = [ |
| "//base", |
| "//components/compose:buildflags", |
| "//components/prefs", |
| "//components/segmentation_platform/embedder", |
| "//components/segmentation_platform/internal", |
| "//components/segmentation_platform/internal/proto", |
| "//components/segmentation_platform/public", |
| "//components/sync/service", |
| "//components/sync_device_info", |
| "//components/visited_url_ranking/public", |
| "//services/metrics/public/cpp:ukm_builders", |
| "//ui/base", |
| ] |
| if (is_android) { |
| sources += [ |
| "device_tier_segment.cc", |
| "device_tier_segment.h", |
| "frequent_feature_user_model.cc", |
| "frequent_feature_user_model.h", |
| "intentional_user_model.cc", |
| "intentional_user_model.h", |
| "power_user_segment.cc", |
| "power_user_segment.h", |
| "tablet_productivity_user_model.cc", |
| "tablet_productivity_user_model.h", |
| ] |
| } |
| if (enable_compose) { |
| sources += [ |
| "compose_promotion.cc", |
| "compose_promotion.h", |
| ] |
| deps += [ "//components/compose/core/browser" ] |
| } |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| |
| # IMPORTANT NOTE: When adding new tests, also remember to update the list of |
| # tests in //components/segmentation_platform/components_unittests.filter |
| sources = [ |
| "android_home_module_ranker_unittest.cc", |
| "chrome_user_engagement_unittest.cc", |
| "contextual_page_actions_model_unittest.cc", |
| "cross_device_user_segment_unittest.cc", |
| "database_api_clients_unittest.cc", |
| "device_switcher_model_unittest.cc", |
| "device_switcher_result_dispatcher_unittest.cc", |
| "fedcm_user_segment_unittest.cc", |
| "feed_user_segment_unittest.cc", |
| "ios_module_ranker_unittest.cc", |
| "low_user_engagement_model_unittest.cc", |
| "metrics_clustering_unittest.cc", |
| "most_visited_tiles_user_unittest.cc", |
| "optimization_target_segmentation_dummy_unittest.cc", |
| "password_manager_user_segment_unittest.cc", |
| "resume_heavy_user_model_unittest.cc", |
| "search_user_model_unittest.cc", |
| "shopping_user_model_unittest.cc", |
| "tab_resumption_ranker_unittest.cc", |
| "tips_notifications_ranker_unittest.cc", |
| "url_visit_resumption_ranker_unittest.cc", |
| ] |
| |
| if (is_android) { |
| sources += [ |
| "device_tier_segment_unittest.cc", |
| "frequent_feature_user_model_unittest.cc", |
| "intentional_user_model_unittest.cc", |
| "power_user_segment_unittest.cc", |
| "tablet_productivity_user_model_unittest.cc", |
| ] |
| } |
| |
| deps = [ |
| ":default_model", |
| ":default_model_test_base", |
| "//base", |
| "//base/test:test_support", |
| "//components/prefs:test_support", |
| "//components/segmentation_platform/embedder", |
| "//components/segmentation_platform/internal", |
| "//components/segmentation_platform/internal/proto", |
| "//components/segmentation_platform/public", |
| "//components/segmentation_platform/public:test_support", |
| "//components/segmentation_platform/public/proto", |
| "//components/sync:test_support", |
| "//components/sync_device_info", |
| "//components/sync_device_info:test_support", |
| "//components/visited_url_ranking/public", |
| "//testing/gtest", |
| ] |
| |
| if (enable_compose) { |
| sources += [ "compose_promotion_unittest.cc" ] |
| deps += [ "//components/compose/core/browser" ] |
| } |
| } |
| |
| source_set("default_model_test_base") { |
| testonly = true |
| sources = [ |
| "default_model_test_base.cc", |
| "default_model_test_base.h", |
| ] |
| |
| deps = [ |
| ":default_model", |
| "//base", |
| "//base/test:test_support", |
| "//components/segmentation_platform/internal", |
| "//components/segmentation_platform/internal/proto", |
| "//components/segmentation_platform/public", |
| "//testing/gtest", |
| ] |
| } |