chromium/components/metrics/structured/test/test_key_data_provider.h

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

#ifndef COMPONENTS_METRICS_STRUCTURED_TEST_TEST_KEY_DATA_PROVIDER_H_
#define COMPONENTS_METRICS_STRUCTURED_TEST_TEST_KEY_DATA_PROVIDER_H_

#include <memory>
#include <optional>
#include <string>

#include "base/functional/callback_forward.h"
#include "components/metrics/structured/lib/key_data_provider.h"

namespace base {
class FilePath;
}

namespace metrics::structured {

// Test implementation for KeyDataProvider.
//
// If only the |device_key_path| is provided in the ctor, then
// |profile_key_data_| will be empty until InitializeProfileKey is called and
// created in specified path |profile_path|. If |profile_key_path| is provided
// in the ctor, then |profile_path| provided in InitializeProfileKey will be
// ignored.
class TestKeyDataProvider : public KeyDataProvider, KeyDataProvider::Observer {};

}  // namespace metrics::structured

#endif  // COMPONENTS_METRICS_STRUCTURED_TEST_TEST_KEY_DATA_PROVIDER_H_