#include "services/preferences/tracked/tracked_preferences_migration.h"
#include <memory>
#include <set>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/memory/weak_ptr.h"
#include "base/strings/string_split.h"
#include "base/values.h"
#include "components/prefs/pref_name_set.h"
#include "components/prefs/testing_pref_service.h"
#include "services/preferences/tracked/dictionary_hash_store_contents.h"
#include "services/preferences/tracked/hash_store_contents.h"
#include "services/preferences/tracked/interceptable_pref_filter.h"
#include "services/preferences/tracked/pref_hash_store.h"
#include "services/preferences/tracked/pref_hash_store_impl.h"
#include "services/preferences/tracked/pref_hash_store_transaction.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
const char kUnprotectedPref[] = …;
const char kProtectedPref[] = …;
const char kPreviouslyUnprotectedPref[] = …;
const char kPreviouslyProtectedPref[] = …;
const char kUnprotectedPrefValue[] = …;
const char kProtectedPrefValue[] = …;
const char kPreviouslyUnprotectedPrefValue[] = …;
const char kPreviouslyProtectedPrefValue[] = …;
class SimpleInterceptablePrefFilter final : public InterceptablePrefFilter { … };
class TrackedPreferencesMigrationTest : public testing::Test { … };
const char TrackedPreferencesMigrationTest::kSeed[] = …;
const char TrackedPreferencesMigrationTest::kDeviceId[] = …;
}
TEST_F(TrackedPreferencesMigrationTest, NoMigrationRequired) { … }
TEST_F(TrackedPreferencesMigrationTest, FullMigration) { … }
TEST_F(TrackedPreferencesMigrationTest, CleanupOnly) { … }