blob: 15caeaad78b9d0638b526c938a32b25f0d89d458 [file] [log] [blame] [edit]
# Copyright 2025 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
assert(is_win || is_mac || is_linux)
source_set("browser_switcher") {
sources = []
public_deps = [ "//base" ]
if (is_win) {
sources += [
"browser_switcher_policy_migrator.h",
"browser_switcher_service_win.h",
]
public_deps += [ "//chrome/browser/policy:policy_migrator" ]
}
if (is_win || is_mac || is_linux) {
sources += [
"alternative_browser_driver.h",
"browser_switcher_navigation_throttle.h",
"browser_switcher_prefs.h",
"browser_switcher_service.h",
"browser_switcher_service_factory.h",
"browser_switcher_sitelist.h",
"ieem_sitelist_parser.h",
]
public_deps += [
"//chrome/browser/profiles:profile",
"//components/keyed_service/core",
"//components/policy/core/common",
"//components/prefs",
"//mojo/public/cpp/bindings",
"//services/network/public/cpp",
"//url",
]
}
}
source_set("impl") {
sources = []
deps = [ ":browser_switcher" ]
if (is_win) {
sources += [
"browser_switcher_policy_migrator.cc",
"browser_switcher_service_win.cc",
]
}
if (is_win || is_mac || is_linux) {
sources += [
"browser_switcher_navigation_throttle.cc",
"browser_switcher_prefs.cc",
"browser_switcher_service.cc",
"browser_switcher_service_factory.cc",
"browser_switcher_sitelist.cc",
"ieem_sitelist_parser.cc",
]
deps += [
"//chrome/common",
"//components/navigation_interception",
"//components/no_state_prefetch/browser",
"//components/pref_registry",
"//components/url_formatter",
"//content/public/browser",
"//services/data_decoder/public/cpp",
"//services/data_decoder/public/cpp:safe_xml_parser",
"//services/data_decoder/public/mojom:mojom_xml_parser",
]
}
if (is_win) {
sources += [ "alternative_browser_driver_win.cc" ]
}
if (is_mac || is_linux) {
sources += [ "alternative_browser_driver_posix.cc" ]
}
public_deps = [ "//chrome/browser:browser_public_dependencies" ]
}
source_set("unit_tests") {
testonly = true
sources = []
deps = []
if (is_linux || is_mac || is_win) {
sources += [
"alternative_browser_driver_unittest.cc",
"browser_switcher_navigation_throttle_unittest.cc",
"browser_switcher_prefs_unittest.cc",
"browser_switcher_sitelist_unittest.cc",
"ieem_sitelist_parser_unittest.cc",
"mock_alternative_browser_driver.cc",
"mock_alternative_browser_driver.h",
]
deps += [
":browser_switcher",
"//base/test:test_support",
"//chrome/app:generated_resources",
"//chrome/test:test_support",
"//components/policy:generated",
"//components/policy:policy_code_generate",
"//components/policy/core/common",
"//components/policy/core/common:test_support",
"//components/prefs:test_support",
"//components/sync_preferences:test_support",
"//content/public/browser",
"//content/test:test_support",
"//services/data_decoder/public/cpp:safe_xml_parser",
"//services/data_decoder/public/cpp:test_support",
"//testing/gtest",
]
}
}
if (!is_android) {
source_set("browser_tests") {
testonly = true
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
sources = []
deps = []
if (is_mac || is_win || is_linux) {
sources += [
"browser_switcher_browsertest.cc",
"browser_switcher_service_browsertest.cc",
]
deps += [
":browser_switcher",
"//base/test:test_config",
"//chrome/browser/ui",
"//chrome/test:test_support_ui",
"//components/policy:generated",
"//components/policy:policy_code_generate",
"//components/policy/core/browser",
"//components/policy/core/common",
"//components/policy/core/common:test_support",
"//content/test:test_support",
"//extensions:test_support",
"//extensions/browser",
"//extensions/common",
"//net",
"//testing/gtest",
]
}
}
}