1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
|
# Copyright 2023 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/optimization_guide/features.gni")
assert(is_win || is_mac || is_linux || is_chromeos || is_android)
source_set("optimization_guide") {
sources = [
"chrome_browser_main_extra_parts_optimization_guide.h",
"chrome_hints_manager.h",
"chrome_model_quality_logs_uploader_service.h",
"chrome_prediction_model_store.h",
"model_validator_keyed_service.h",
"model_validator_keyed_service_factory.h",
"optimization_guide_internals_ui.h",
"optimization_guide_keyed_service.h",
"optimization_guide_keyed_service_factory.h",
"optimization_guide_tab_url_provider.h",
"optimization_guide_web_contents_observer.h",
]
public_deps = [
"//base",
"//chrome/browser:main_extra_parts",
"//chrome/browser/navigation_predictor",
"//chrome/browser/profiles:profile",
"//components/keyed_service/core",
"//components/optimization_guide/core:core",
"//components/optimization_guide/core:prediction",
"//components/optimization_guide/optimization_guide_internals/webui",
"//components/optimization_guide/public/mojom",
"//components/services/unzip/content:content",
"//components/signin/public/identity_manager",
"//content/public/browser",
"//mojo/public/cpp/bindings",
"//ui/base",
"//ui/webui",
]
if (is_android) {
public_deps += [ "//chrome/browser/bookmarks/android" ]
}
}
source_set("impl") {
sources = [
"chrome_browser_main_extra_parts_optimization_guide.cc",
"chrome_hints_manager.cc",
"chrome_model_quality_logs_uploader_service.cc",
"chrome_prediction_model_store.cc",
"model_validator_keyed_service.cc",
"model_validator_keyed_service_factory.cc",
"optimization_guide_internals_ui.cc",
"optimization_guide_keyed_service.cc",
"optimization_guide_keyed_service_factory.cc",
"optimization_guide_tab_url_provider.cc",
"optimization_guide_web_contents_observer.cc",
]
public_deps = [ "//chrome/browser:browser_public_dependencies" ]
deps = [
":optimization_guide",
"//chrome/browser:browser_process",
"//chrome/browser/profiles:profiles",
"//chrome/browser/sync:sync",
"//chrome/browser/ui:ui",
"//components/metrics_services_manager:metrics_services_manager",
"//components/no_state_prefetch/browser:browser",
"//components/user_prefs:user_prefs",
"//components/variations/service:service",
"//components/version_info:version_info",
"//ui/webui",
]
if (is_android) {
deps += [
"//base",
"//chrome/browser/optimization_guide/android:jni_headers",
]
} else {
deps += [ "//chrome/browser/ui/tabs:tab_strip" ]
}
}
source_set("test_support") {
testonly = true
sources = [
"browser_test_util.cc",
"browser_test_util.h",
"mock_optimization_guide_keyed_service.cc",
"mock_optimization_guide_keyed_service.h",
]
deps = [
":optimization_guide",
"//base",
"//chrome/browser/prefs:prefs",
"//chrome/common",
"//chrome/test:test_support",
"//components/metrics:content",
"//components/optimization_guide/core",
"//components/prefs",
"//components/signin/public/identity_manager",
]
# chrome/browser/ui/passwords/manage_passwords_test.h
# -> mock_optimization_guide_keyed_service.h
# -> chrome/test/base/testing_browser_process.h
allow_circular_includes_from = [ "//chrome/test:test_support" ]
}
if (!is_android) {
source_set("browser_tests") {
testonly = true
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
sources = [
"hints_fetcher_browsertest.cc",
"model_execution/model_execution_browsertest.cc",
"model_execution/model_execution_live_test.cc",
"model_execution/model_execution_validation_browsertest.cc",
"optimization_guide_keyed_service_browsertest.cc",
]
if (build_with_tflite_lib) {
sources += [
"prediction/prediction_manager_browsertest.cc",
"prediction/prediction_model_store_browsertest.cc",
]
}
deps = [
":optimization_guide",
":test_support",
"//base/test:test_proto",
"//base/test:test_support",
"//chrome/browser/signin/e2e_tests:test_support",
"//chrome/test:test_support",
"//components/metrics_services_manager",
"//components/no_state_prefetch/browser",
"//components/optimization_guide/core:test_support",
"//components/site_engagement/content",
"//components/variations/service",
"//third_party/tflite:buildflags",
]
}
}
source_set("unit_tests") {
testonly = true
sources = [
"chrome_hints_manager_unittest.cc",
"chrome_model_quality_logs_uploader_service_unittest.cc",
]
deps = [
":optimization_guide",
":test_support",
"//chrome/test:test_support",
"//components/optimization_guide/core:test_support",
"//components/prefs:test_support",
"//components/unified_consent:unified_consent",
"//components/variations:test_support",
]
if (!is_android) {
sources += [
# Android uses a different way of showing browser windows.
"optimization_guide_tab_url_provider_unittest.cc",
]
}
}
|