using System.Collections.Concurrent;
using Marathon.UI.Services;
namespace Marathon.UI.Tests.Support;
/// In-memory for component tests.
public sealed class TestSettingsWriter : ISettingsWriter
{
public ConcurrentDictionary Saved { get; } = new();
public ConcurrentBag Reset { get; } = new();
public Task SaveSectionAsync(string sectionName, T values, CancellationToken cancellationToken = default)
where T : class
{
Saved[sectionName] = values;
return Task.CompletedTask;
}
public Task ResetSectionAsync(string sectionName, CancellationToken cancellationToken = default)
{
Reset.Add(sectionName);
return Task.CompletedTask;
}
}