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; } }