blob: 18c621db7804d427d21f81072621e4c09a392af6 [file] [log] [blame]
# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
source_set("utils") {
sources = [ "ios_promos_utils.h" ]
deps = [
"//base",
"//chrome/browser/promos:utils",
]
}
if (!is_android) {
source_set("impl") {
sources = [ "ios_promos_utils.cc" ]
deps = [
":utils",
"//chrome/browser/feature_engagement",
"//chrome/browser/profiles:profile",
"//chrome/browser/promos:utils",
"//chrome/browser/segmentation_platform",
"//chrome/browser/sync",
"//chrome/browser/ui",
"//chrome/browser/ui/views/frame:toolbar_button_provider",
"//chrome/browser/ui/views/location_bar",
"//chrome/browser/ui/views/toolbar",
"//components/feature_engagement/public",
"//components/segmentation_platform/embedder/default_model",
"//components/segmentation_platform/public",
"//components/sync/service",
"//components/sync_preferences/cross_device_pref_tracker",
"//components/sync_preferences/cross_device_pref_tracker:timestamped_pref_value",
"//components/sync_preferences/cross_device_pref_tracker/prefs",
]
}
source_set("controller") {
sources = [
"ios_promo_controller.cc",
"ios_promo_controller.h",
]
deps = [
":service",
":utils",
"//chrome/browser/profiles:profile",
"//chrome/browser/ui/browser_window",
"//chrome/browser/ui/views/frame",
"//ui/base/unowned_user_data",
]
public_deps = [ "//chrome/browser:browser_public_dependencies" ]
}
source_set("service") {
sources = [
"ios_promo_trigger_service.cc",
"ios_promo_trigger_service.h",
"ios_promo_trigger_service_factory.cc",
"ios_promo_trigger_service_factory.h",
]
deps = [
"//base",
"//chrome/browser/profiles:profile",
"//chrome/browser/promos:utils",
"//components/keyed_service/core",
"//components/sharing_message",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"ios_promo_trigger_service_unittest.cc",
"ios_promos_utils_unittest.cc",
]
deps = [
":controller",
":impl",
":service",
":utils",
"//base/test:test_support",
"//chrome/browser/promos:utils",
"//chrome/browser/sync",
"//chrome/test:test_support",
"//components/sync:test_support",
"//components/sync_device_info",
"//components/sync_device_info:test_support",
"//components/sync_preferences:features",
"//components/sync_preferences:test_support",
"//components/sync_preferences/cross_device_pref_tracker",
"//components/sync_preferences/cross_device_pref_tracker/prefs",
"//testing/gtest",
]
}
}