chromium/chrome/browser/enterprise/connectors/device_trust/attestation/browser/profile_attester_unittest.cc

// 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.

#include "chrome/browser/enterprise/connectors/device_trust/attestation/browser/profile_attester.h"

#include "base/run_loop.h"
#include "chrome/browser/enterprise/identifiers/profile_id_service_factory.h"
#include "chrome/test/base/testing_browser_process.h"
#include "chrome/test/base/testing_profile.h"
#include "chrome/test/base/testing_profile_manager.h"
#include "components/enterprise/browser/identifiers/profile_id_service.h"
#include "components/policy/core/common/cloud/mock_cloud_policy_store.h"
#include "content/public/test/browser_task_environment.h"
#include "testing/gtest/include/gtest/gtest.h"

namespace enterprise_connectors {

namespace {

constexpr char kFakeProfileId[] =;
constexpr char kFakeChallengeResponse[] =;
constexpr char kFakeCustomerId[] =;
constexpr char kFakeGaiaId[] =;

std::unique_ptr<KeyedService> CreateProfileIDService(
    content::BrowserContext* context) {}

}  // namespace

class ProfileAttesterTest
    : public ::testing::TestWithParam<std::tuple<bool, bool>> {};

// Tests that the correct device details are added when the profile attester
// decorates the key info.
TEST_P(ProfileAttesterTest, DecorateKeyInfo_Success) {}

// Tests that no policy data is added when the user cloud policy store is
// null.
TEST_F(ProfileAttesterTest, DecorateKeyInfo_MissingUserCloudPolicyStore) {}

// Tests that no user details are added when the user policy level is missing.
TEST_P(ProfileAttesterTest, DecorateKeyInfo__MissingUserPolicyLevel) {}

// Tests that no profile level signature is added to the signed data.
TEST_F(ProfileAttesterTest, SignResponse_NoSignature) {}

INSTANTIATE_TEST_SUITE_P();
}  // namespace enterprise_connectors