using CursorLang.Core.Models; using CursorLang.Core.Services; using CursorLang.Settings.Services; using CursorLang.Settings.ViewModels; using CursorLang.Tests.Shared; namespace CursorLang.Settings.Tests.Infrastructure; /// /// Parts every test needs but few tests care about. /// internal static class Fake { internal static UpdateViewModel Updates() => new(new FakeUpdateService(), new FakeLocalizationService(), new AppSettings(), new UpdateOptions()); } /// /// A theme that paints nothing and only remembers the windows attached to it. /// internal sealed class FakeThemeService : IThemeService { public AppTheme CurrentTheme { get; set; } = AppTheme.Light; internal List Registered { get; } = []; public void Register(System.Windows.Window window) => Registered.Add(window); }