blob: 8f08aed874f658484e8e7890cb35de8d8b44e9c0 [file] [log] [blame]
// 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_SYNC_PREFERENCES_TEST_SYNCABLE_PREFS_DATABASE_H_
#define COMPONENTS_SYNC_PREFERENCES_TEST_SYNCABLE_PREFS_DATABASE_H_
#include <functional>
#include <map>
#include <set>
#include <string>
#include <string_view>
#include "components/sync_preferences/syncable_prefs_database.h"
namespace sync_preferences {
class TestSyncablePrefsDatabase : public SyncablePrefsDatabase {
public:
using PrefsMap = std::
map<std::string, sync_preferences::SyncablePrefMetadata, std::less<>>;
explicit TestSyncablePrefsDatabase(const PrefsMap& syncable_prefs_map);
~TestSyncablePrefsDatabase() override;
std::optional<sync_preferences::SyncablePrefMetadata> GetSyncablePrefMetadata(
std::string_view pref_name) const override;
private:
PrefsMap syncable_prefs_map_;
std::set<std::string_view> always_syncing_prefs_;
};
} // namespace sync_preferences
#endif // COMPONENTS_SYNC_PREFERENCES_TEST_SYNCABLE_PREFS_DATABASE_H_