| # 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. |
| |
| assert(is_win) |
| |
| source_set("os_crypt") { |
| sources = [ |
| "app_bound_encryption_provider_win.cc", |
| "app_bound_encryption_provider_win.h", |
| ] |
| |
| deps = [ |
| "//base", |
| "//chrome/common:channel_info", |
| "//chrome/install_static:install_static_util", |
| "//components/os_crypt/async/browser:key_provider_interface", |
| "//components/prefs:prefs", |
| "//content/public/browser", |
| ] |
| |
| public_deps = [ ":app_bound_api" ] |
| } |
| |
| # The API sources are separated out for the purposes of linking cleanly with the |
| # test executable, but the public 'os_crypt' target should be depended upon. |
| source_set("app_bound_api") { |
| visibility = [ ":*" ] |
| sources = [ |
| "app_bound_encryption_win.cc", |
| "app_bound_encryption_win.h", |
| ] |
| |
| deps = [ |
| "//base", |
| "//chrome/common:constants", |
| "//chrome/elevation_service:public_headers", |
| "//chrome/install_static:install_static_util", |
| "//components/prefs:prefs", |
| "//components/sync/base", |
| ] |
| } |
| |
| source_set("browser_tests") { |
| testonly = true |
| sources = [ "app_bound_encryption_win_browsertest.cc" ] |
| |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| |
| deps = [ |
| ":os_crypt", |
| ":test_support", |
| "//base", |
| "//chrome/elevation_service:public_headers", |
| "//chrome/test:test_support", |
| "//chrome/windows_services/service_program/test_support", |
| "//content/test:test_support", |
| ] |
| |
| if (!is_component_build) { |
| data_deps = [ ":app_binary" ] |
| } |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "app_bound_encryption_provider_win_unittest.cc", |
| "app_bound_encryption_win_unittest.cc", |
| ] |
| |
| deps = [ |
| ":os_crypt", |
| ":test_support", |
| "//base", |
| "//base/test:test_support", |
| "//chrome/elevation_service:public_headers", |
| "//components/prefs", |
| "//components/prefs:test_support", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| } |
| |
| source_set("test_support") { |
| testonly = true |
| sources = [ |
| "test_support.cc", |
| "test_support.h", |
| ] |
| deps = [ |
| "//base", |
| "//chrome/elevation_service:public_headers", |
| "//chrome/install_static:install_static_util", |
| "//chrome/install_static/test:test_support", |
| "//chrome/installer/util:constants", |
| "//chrome/installer/util:work_item", |
| "//chrome/windows_services/service_program/test_support", |
| ] |
| } |
| |
| # This binary is launched by the browser tests and makes calls to the app-bound |
| # service to test the functionality for various executable callers. It cannot |
| # be used in a component build because it needs to function from any directory |
| # on the system as part of the test. |
| if (!is_component_build) { |
| executable("app_binary") { |
| testonly = true |
| sources = [ "app_bound_encryption_test_main.cc" ] |
| deps = [ |
| ":app_bound_api", |
| ":test_support", |
| "//base", |
| "//chrome/install_static/test:test_support", |
| ] |
| } |
| } |