# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromeos/ui_mode.gni")
import("//testing/test.gni")
assert(is_chromeos_ash, "Non-Chrome-OS builds must not depend on //ash")
component("attestation") {
defines = [ "IS_CHROMEOS_ASH_COMPONENTS_ATTESTATION_IMPL" ]
deps = [
"//base",
"//chromeos/ash/components/cryptohome",
"//chromeos/ash/components/dbus/attestation",
"//chromeos/ash/components/dbus/attestation:attestation_proto",
"//chromeos/ash/components/dbus/constants",
"//chromeos/dbus/common",
"//components/account_id",
"//crypto",
]
sources = [
"attestation_features.cc",
"attestation_features.h",
"attestation_flow.cc",
"attestation_flow.h",
"attestation_flow_adaptive.cc",
"attestation_flow_adaptive.h",
"attestation_flow_factory.cc",
"attestation_flow_factory.h",
"attestation_flow_integrated.cc",
"attestation_flow_integrated.h",
"attestation_flow_status_reporter.cc",
"attestation_flow_status_reporter.h",
"attestation_flow_type_decider.cc",
"attestation_flow_type_decider.h",
]
}
source_set("test_support") {
testonly = true
public_deps = [ ":attestation" ]
deps = [
"//base/test:test_support",
"//chromeos/ash/components/dbus/attestation:attestation_proto",
"//chromeos/ash/components/dbus/constants",
"//components/account_id",
"//net",
"//testing/gmock",
]
sources = [
"fake_attestation_flow.cc",
"fake_attestation_flow.h",
"fake_certificate.cc",
"fake_certificate.h",
"mock_attestation_flow.cc",
"mock_attestation_flow.h",
"stub_attestation_features.cc",
"stub_attestation_features.h",
]
}
source_set("unit_tests") {
testonly = true
deps = [
":test_support",
"//base/test:test_support",
"//chromeos/ash/components/cryptohome",
"//chromeos/ash/components/dbus:test_support",
"//chromeos/ash/components/dbus/attestation",
"//chromeos/ash/components/dbus/attestation:attestation_proto",
"//chromeos/ash/components/dbus/constants",
"//components/account_id",
"//testing/gmock",
"//testing/gtest",
]
sources = [
"attestation_features_unittest.cc",
"attestation_flow_adaptive_unittest.cc",
"attestation_flow_integrated_unittest.cc",
"attestation_flow_status_reporter_unittest.cc",
"attestation_flow_type_decider_unittest.cc",
"attestation_flow_unittest.cc",
]
}